jiter
Fast iterable JSON parser.
Decision gist · record as of 2026-08-14
Yes, if you need faster JSON parsing than the standard library and want to avoid pydantic's full dependency footprint. The zero runtime dependencies, active maintenance, and permissive MIT license make it low-risk. Medium install friction is typical for compiled packages and not a blocker. Install only if performance or parsing control (partial mode, duplicate detection, float precision) matters for your use case.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Input must be bytes, not a string; requires Python 3.9 or later.
- Medium install friction due to compiled wheels across many platforms (CPython 3.9–3.14, multiple architectures).
- Active maintenance with recent releases; no runtime dependencies simplifies deployment.
License · maintenance · safety
MIT (permissive) — MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal attribution requirements.
last release 2026-06-29 (46 days) · last repo commit 2026-06-29 · 539 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 393,239,763 downloads/mo, #110 on PyPI
Alternatives
Verify before relying
import jiter
json_data = b'{"name": "John", "age": 30}'
parsed = jiter.from_json(json_data)
print(parsed) # {'name': 'John', 'age': 30}- Performance benchmarks against standard library json or other third-party parsers to substantiate 'fast' claim.
- Whether LosslessFloat type is a built-in Python type or a custom class defined by jiter.
- Memory overhead of string caching modes and guidance on when each mode is optimal.
What it is and what it does
Jiter is a standalone JSON parser extracted from pydantic-core, designed for developers who need fast JSON parsing without adopting the full pydantic framework. It accepts bytes and returns native Python objects (dicts, lists, scalars), with no external runtime dependencies. The parser is minimal by design—a single entry point `from_json()` with optional parameters for controlling parsing behavior.
The package targets use cases where standard library json is too slow or where you need fine-grained control over parsing: caching string keys to reduce memory churn, handling incomplete JSON streams, detecting duplicate object keys, or returning floats as Decimal or a lossless representation. It supports Python 3.9 through 3.14 and is distributed as pre-compiled wheels across common platforms and architectures.
Use it for
- Parse large JSON files or streams where performance is critical and you want to tune string caching to balance speed and memory.
- Handle incomplete or streaming JSON data using partial_mode to gracefully process truncated input.
- Validate JSON structure by catching duplicate keys with catch_duplicate_keys=True to enforce strict object uniqueness.
- Work with numeric data requiring exact decimal representation by setting float_mode='decimal' or 'lossless-float'.
- Integrate into non-pydantic Python services that need a lightweight, dependency-free JSON parser with minimal API surface.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need faster JSON parsing than the standard library and want to avoid pydantic's full dependency footprint.
The zero runtime dependencies, active maintenance, and permissive MIT license make it low-risk. Medium install friction is typical for compiled packages and not a blocker. Install only if performance or parsing control (partial mode, duplicate detection, float precision) matters for your use case.
Install
jiter on PyPI
Before you install
Medium install friction due to compiled wheels across many platforms (CPython 3.9–3.14, multiple architectures). Active maintenance with recent releases; no runtime dependencies simplifies deployment.
Input must be bytes, not a string; requires Python 3.9 or later.
License in practice
MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal attribution requirements.
Quickstart
import jiter
json_data = b'{"name": "John", "age": 30}'
parsed = jiter.from_json(json_data)
print(parsed) # {'name': 'John', 'age': 30}
Verify before relying
- Performance benchmarks against standard library json or other third-party parsers to substantiate 'fast' claim.
- Whether LosslessFloat type is a built-in Python type or a custom class defined by jiter.
- Memory overhead of string caching modes and guidance on when each mode is optimal.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 46 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 393,239,763 / month, #110 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaEnvironment :: ConsoleEnvironment :: MacOS XFramework :: Pydantic :: 2Intended Audience :: DevelopersIntended Audience :: Information TechnologyIntended Audience :: System AdministratorsOperating System :: POSIX :: LinuxOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: GraalPyTopic :: File Formats :: JSON |
Evidence: jiter-0.16.0-cp310-cp310-macosx_10_12_x86_64.whl; jiter-0.16.0-cp310-cp310-macosx_11_0_arm64.whl; jiter-0.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; jiter-0.16.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; jiter-0.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; jiter-0.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl; jiter-0.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; jiter-0.16.0-cp310-cp310-manylinux_2_31_riscv64.whl; jiter-0.16.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl; jiter-0.16.0-cp310-cp310-musllinux_1_1_aarch64.whl; jiter-0.16.0-cp310-cp310-musllinux_1_1_x86_64.whl; jiter-0.16.0-cp310-cp310-win32.whl; jiter-0.16.0-cp310-cp310-win_amd64.whl; jiter-0.16.0-cp311-cp311-macosx_10_12_x86_64.whl; jiter-0.16.0-cp311-cp311-macosx_11_0_arm64.whl; jiter-0.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; jiter-0.16.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; jiter-0.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; jiter-0.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl; jiter-0.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.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 › “fast json parser”
- jiterA fast JSON parser that converts bytes into Python objects, offering…
- hogql-parser-rsParses HogQL query expressions into JSON AST format via a hand-rolled…
- python-rapidjsonFast JSON serialization and deserialization with JSON Schema…
Give your agent the search over MCP, or paste the wish link into any chat.
More JSON packages
jsonschema validates Python data structures against JSON Schema specifications, raising exceptions when validation fails or iterating through all errors found.
Install it if you need to validate JSON or JSON-like data structures.
Resolves JSON references according to JSON Schema and related specifications, providing a standard way to handle $ref pointers in JSON documents.
Provides JSON Schema metaschemas, vocabularies, and specification files packaged as a Python-accessible Registry for runtime schema validation and reference resolution.
Install it if you are building validation tooling or using a validator that depends on it; it adds negligible friction.
Generates country- and subdivision-specific government holiday calendars on demand, supporting 250 country codes with optional language localization and holiday categories.
GenSON generates JSON Schema documents from JSON objects and can merge multiple schemas together, inferring a unified schema that describes the common structure of your data.
jsonschema-rs validates JSON data against JSON Schema documents using a Rust-backed implementation for high performance, supporting drafts 4 through 2020-12 with customizable format validators and keywords.
Install it if you validate JSON frequently or need to support multiple schema drafts.
See also partialjson · jsonslicer · json-tools-rs · partial-json-parser · jsonschema-pydantic-converter · cachier · pydantic_core · json-flatten · dydantic · dirtyjson