objgraph
Draws Python object reference graphs with graphviz
Decision gist · record as of 2026-08-14
Yes. Objgraph is a specialized but essential tool for memory debugging in Python. It has no runtime dependencies, is actively maintained, carries a permissive MIT license, and fills a clear niche in memory profiling that general-purpose tools don't address. Install it if you work on long-running Python applications or suspect memory leaks; skip it if you don't do memory debugging.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Graphviz must be installed separately on your system to generate visual graphs; xdot is optional but recommended for interactive exploration.
- Low install friction with no runtime dependencies.
- Actively maintained with recent releases supporting Python 3.13; last commit 2026-07-24 and 842 repository stars indicate ongoing care.
License · maintenance · safety
MIT (permissive) — MIT license permits unrestricted use, modification, and distribution in both open-source and proprietary projects with minimal obligations.
last release 2024-10-10 (673 days) · last repo commit 2026-07-24 · 842 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,277,216 downloads/mo, #4,124 on PyPI
Alternatives
Verify before relying
pip install objgraph
import objgraph
objgraph.show_most_common_types(limit=10)
objgraph.show_refs([obj], filename='refs.png')- Whether the package works correctly with all supported Python versions (3.7–3.13) in your specific environment.
- Performance characteristics when analyzing very large object graphs or long-running processes.
What it is and what it does
Objgraph is a debugging tool that maps and visualizes the reference relationships between Python objects in memory. It helps developers hunt memory leaks by showing which objects hold references to which other objects, and can generate graphical representations of these relationships using graphviz. The package provides functions to count object types, track object growth over time, find reference chains between objects, and display backreferences—all useful when you need to understand why memory isn't being freed or which objects are keeping others alive.
The package has no runtime dependencies in Python itself, making it lightweight to install. It integrates with graphviz for visualization and optionally with xdot for interactive graph exploration. It supports modern Python versions from 3.7 onward and has been actively maintained since 2009, with recent updates adding support for Python 3.12 and 3.13.
Use it for
- Identify which objects are holding references to a suspected memory leak in a long-running application.
- Visualize the reference graph between specific objects to understand unexpected memory retention.
- Track object type growth over time to spot gradual memory accumulation during application execution.
- Debug circular references and reference cycles that prevent garbage collection.
- Analyze object relationships in complex Python programs to understand data structure interactions.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Objgraph is a specialized but essential tool for memory debugging in Python. It has no runtime dependencies, is actively maintained, carries a permissive MIT license, and fills a clear niche in memory profiling that general-purpose tools don't address. Install it if you work on long-running Python applications or suspect memory leaks; skip it if you don't do memory debugging.
Install
objgraph on PyPI
Before you install
Low install friction with no runtime dependencies. Actively maintained with recent releases supporting Python 3.13; last commit 2026-07-24 and 842 repository stars indicate ongoing care.
Graphviz must be installed separately on your system to generate visual graphs; xdot is optional but recommended for interactive exploration.
License in practice
MIT license permits unrestricted use, modification, and distribution in both open-source and proprietary projects with minimal obligations.
Quickstart
pip install objgraph
import objgraph
objgraph.show_most_common_types(limit=10)
objgraph.show_refs([obj], filename='refs.png')
Verify before relying
- Whether the package works correctly with all supported Python versions (3.7–3.13) in your specific environment.
- Performance characteristics when analyzing very large object graphs or long-running processes.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 673 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,277,216 / month, #4,124 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: objgraph-3.6.2-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “python memory leak visualization”
- objgraphObjgraph lets you visualize and explore Python object reference…
- mozleakExtracts memory leaks from leak log files, primarily for Firefox and…
- memrayMemray is a memory profiler for Python that traces every function…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also types-objgraph · pyan3 · pygraphviz · modulegraph · graphviz · gprof2dot · objectgraph · pydotplus · torchviz · altgraph