The Bluesky firehose is the broad AT Protocol event stream of repository changes, while Jetstream is a service designed to make a filtered, developer-friendly stream easier to consume. Jetstream trades some of the firehose's lower-level fidelity and protocol complexity for simpler JSON events and filtering.
Raw sync stream versus simplified JSON
The AT Protocol sync stream exposes repository commit events and related information needed by infrastructure that wants a complete view of network changes. Consumers must understand repository structures, CAR data and protocol details. Jetstream sits above that layer: it consumes network events and emits simplified JSON records that are easier for applications, bots and analytics tools to process. Implementations have supported filtering by collection or DID so a consumer does not need to ingest every event when it only cares about a narrow subset.
Which one should an application consume?
The distinction matters for choosing infrastructure. A search engine, archival system or full AppView may need the completeness and cryptographic context of the underlying sync stream. A small moderation tool that only wants new post records may prefer Jetstream's simpler representation and much lower development overhead. Both are ways of observing AT Protocol activity, but they target different operational needs.
Jetstream is an evolving service
Jetstream has evolved as the AT Protocol ecosystem has changed, and deployment status or event details can change more quickly than the core protocol. It should not be treated as a replacement for the authoritative repositories or as a source of every byte needed for independent verification. Developers building critical infrastructure should check the current Jetstream repository and AT Protocol sync specification before assuming a particular production contract.
Related reading
- What Is a PDS in AT Protocol? Personal Data Servers Explained
- What Is an AppView in AT Protocol? The Missing Layer Between Data and Apps