{{{django.core.handlers.profiler-hotshot}}} provides profiling support for Django when using mod_python. Hotshot generates logs that can be also used by aplication like kcachegrind. Read [http://www.rkblog.rk.edu.pl/w/p/django-profiling-hotshot-and-kcachegrind/ Django profiling with hotshot and kcachegrind] for more details. Here's a similar solution for the internal development webserver. Apply the included patch to {{{django/core/management.py}}} and start Django with {{{manage.py runserver}}}. Each request will create a {{{.prof}}} file in your {{{/tmp}}} directory. You can then open a Python shell and print the statistics: {{{ >>> import hotshot.stats >>> stats = hotshot.stats.load("stones.prof") >>> stats.strip_dirs() >>> stats.sort_stats('time', 'calls') >>> stats.print_stats(20) }}} You can also use [http://code.djangoproject.com/browser/django/trunk/django/bin/profiling/gather_profile_stats.py gather_profile_stats.py] in the Django distribution to aggregate the generated profilings and open them with pstats.Stats