The data is free. The work is not.
Solana history is public, and the tools to read it are open source. But tools are not a table. This service gives you the table, and you keep no toolchain.
The parts exist
The Old Faithful archive holds every Solana block since genesis, one file for each epoch. The Solana Foundation funds its storage. It is more than 600 TB, and each new epoch adds about 0.7 TB.
Jetstreamer, from Anza, is an open-source engine that replays this archive at high speed. It is the correct engine for the job. It is also an engine, not a product.
To get one table for one program from these parts, you must do all of the work in the list.
Most teams need this a few times. They do not want to own a pipeline for it.
The work between the archive and a table
- Build the engine. Its optimized build ran out of memory on 3.3 GB of RAM.
- Write a plugin that tests each transaction against your filter, including inner instructions.
- Write a decoder for the instructions and the events in the IDL.
- Rent a machine near the archive, and run it for hours.
- Write Parquet, and upload files larger than the 5 GB limit of one upload.
- Delete the machine when the job ends, and also when it hangs.
- Find the errors that do not look like errors. See the list.
One question about the past, answered once.
Research and analytics
Every trade of a token since launch. Every wallet that used a program. The fee history of one account.
Protocol teams
The full instruction history of your program before a migration, an audit or an airdrop snapshot.
Compliance
All activity of a list of accounts, with signatures that anybody can verify on chain.
Trading and backtests
Decoded swaps and events, slot by slot, in a format that loads into Python, DuckDB, Polars or Spark.
AI agents
An agent pays with x402 and gets the data. There is no account, no API key and no form. How agents pay.
Each one is good at something. None is a batch scan.
Use the correct tool. For a quick question about a program that a warehouse already decoded, use the warehouse.
| Option | Good for | Where it stops |
|---|---|---|
| JSON-RPC | One transaction or one address, recent data, fast answers | One request for each transaction. Rate limits and history limits make a backfill slow. |
| SQL warehouses | Fast answers about programs they already decoded | A program they did not decode has only raw bytes. Large exports have limits. |
| Pre-made datasets | An instant download for a popular program | A fixed list of programs and fixed time windows. No filter on your accounts. |
| Your own pipeline | Full control, and a live stream | Days of setup, and a machine to watch. See servers and agents. |
| This service | Any program, any account, any epoch range, decoded, as Parquet you keep | Batch only: results in hours, not seconds. The archive is 2 to 4 days behind the chain. |
Nothing runs between jobs.
One machine for each job
It starts when you pay. We delete it when the job ends. There is no fleet and no cache, so there is no idle cost to put into your price.
Next to the archive
The archive origin is in Amsterdam. Our machines run in Amsterdam too. We measured about 20 Gbps on that path.
A price from exact bytes
The quote reads the size of each epoch file. You pay $2 for each TB of archive scanned (launch price; list price $5), and the price you see is the price you pay.
Ask your question about the past.
Select a program and an epoch range. The price comes back at once.