Historical State Infrastructure Beta

Replay Solana, at any moment in its past.

Rewind is the first hosted service that gives you point-in-time account state and historical transaction simulation against the chain as it was — not as it is. Reproduce exploits exactly. Audit transactions against the state they actually saw. Validate strategies against real on-chain conditions, slippage, and competition. Built on a deduplicated archive of every account write on Solana mainnet, growing toward a rolling 90-day window.

Live Slot Scrubber
Online
Querying State At
416,156,064
live — mainnet
archive start now
pubkey: 3MNi…cueS
lamports: 8,421,094
owner: CPMMoo8L…sN
slot: 416,394,827
resolved: 22ms
The Gap

The chain only shows you now. Everything else is gone.

Solana's RPC tells you what accounts look like at this moment. To know what they looked like 30 days ago — or 30 minutes ago, with sub-slot precision — you've been on your own. Until now.

Without Rewind
01Run your own archival validator (weeks to set up, months to harden)
02Build a custom indexer per program
03Reconstruct state from transaction history
04Hope your CPI write tracking is correct
05Maintain it through every protocol upgrade, forever
06Build your own simulation framework on top
Months. Sometimes never.
With Rewind
01curl -X POST /rewind
02
03
04
05
06
25 milliseconds.
Methods Available in Beta

Six primitives. Compose them however you want.

Rewind is infrastructure, not a workflow tool. These primitives are the substrate — you bring the question, we provide fast access to the data and execution layer needed to answer it. Drop-in compatible with Solana RPC where possible, with extensions for sub-slot precision and audit-trail metadata.

01 / 06
Read Primitive
getAccountInfo

Point-in-time account state.

The state of any account at any historical slot, with sub-slot precision when you need it. Position by slot or by transaction signature anchor. Drop-in compatible with Solana RPC's response shape — existing tooling works unmodified.

Used For
"What did this pool look like 47 minutes before the exploit?"
POST getAccountInfo
~25ms p50
{
  "params": [
    "3MNi...cueS",
    { "slot": 416394827, "encoding": "base64" }
  ]
}

// Or anchor to a transaction signature for sub-slot precision:
{ "anchor": { "signature": "<sig>", "position": "before" } }
02 / 06
Read Primitive
getMultipleAccounts

Batched lookups, consistent slot.

Many accounts in a single call, all pinned to exactly the same moment in chain history. Critical for any analysis that needs multiple accounts in coherent state — pool reserves, position vaults, multi-program compositions. One round-trip, guaranteed consistency.

Used For
"Show me Pool A and Pool B at the exact same moment."
POST getMultipleAccounts
~30ms p50
{
  "params": [
    ["<pool_a>", "<pool_b>", "<vault>"],
    { "anchor": { "signature": "<swap-sig>", "position": "after" } }
  ]
}
03 / 06
Read Primitive
getAccountChanges

Every write to an account, paginated.

The full per-write history of any account in any slot range, newest-first, with the producing transaction signature attached. Walk a pool's reserves change by change, attribute every mutation to a specific transaction, dedup identical writes via stable content hashes. The primitive that opens up real analysis.

Used For
"Walk every change to this pool over the last week."
POST getAccountChanges
paginated
{
  "params": [
    "<pubkey>",
    {
      "fromSlot": 416000000, "toSlot": 416100000,
      "limit": 100, "includeData": false
    }
  ]
}

// Each row: slot, txnSignature, dataHash, dataChanged, lamports, owner, ...
04 / 06
Read Primitive
getAccountDiff

Two-point structural comparison.

Diff one account between any two moments — lamports delta, owner change, byte mutation flags, full state on each side. Each side positioned independently, by slot or by transaction-anchor. The cleanest answer to "what did this transaction do to this account."

Used For
"What exactly did this transaction change?"
POST getAccountDiff
~50ms p50
{
  "params": [
    "<pubkey>",
    {
      "anchorA": { "signature": "<sig>", "position": "before" },
      "anchorB": { "signature": "<sig>", "position": "after" }
    }
  ]
}
05 / 06
Execution · Flagship
simulateHistoricalTransaction

Simulate a transaction against the chain as it was.

The first hosted service to do this on Solana. LiteSVM execution against the exact account state at any historical slot, with sub-slot precision via signature anchoring. Drop-in compatible with Solana RPC's simulateTransaction response shape, plus extension fields revealing the resolved load slot. Reproduce exploits exactly. Validate strategies against real slippage. Audit failed transactions against the state they actually saw.

Used For
"Would my transaction have succeeded at this exact moment?"
POST simulateHistoricalTransaction
~100ms p50
{
  "params": [
    "<base64 transaction>",
    {
      "slot": 416394827,
      "innerInstructions": true,
      "accounts": {
        "encoding": "base64",
        "addresses": ["<pubkey>"]
      }
    }
  ]
}

// Returns: err, logs, unitsConsumed, accounts, innerInstructions, returnData
06 / 06
Operational
getRewindCoverage

Honest data coverage reporting.

The slot range Rewind covers, every gap within it, and the filtered account classes you can't simulate against (vote and stake, by default). Always free, always accurate. Built so you can trust what you're getting before you build on it.

Used For
"What data do you actually have?"
POST getRewindCoverage
cached · free
{
  "earliestSlot": 408234112,
  "latestSlot": 416428019,
  "slotRange": 8193908,
  "missingSlotCount": 42,
  "gapPercent": 0.000513,
  "filteredOwners": ["Vote111...", "Stake11..."]
}
Who It's For

Built for people with specific questions they can't answer otherwise.

Rewind is infrastructure for sophisticated users who already know what they want to investigate. It doesn't generate strategies or surface insights on its own — it makes hard questions about Solana history fast to answer when you bring the hypothesis.

Protocol Teams
Incident response & parameter tuning
"What was the exact pool state when the exploit happened?"

Reconstruct any moment your protocol experienced. Reproduce attacks against historical state to verify the vulnerability and validate the fix. Test parameter changes (LTVs, fees, rebalance frequencies) against real chain conditions, not idealized models.

Quants & Researchers
Realism-anchored backtesting
"Would my transaction actually have executed at the prices my OHLCV backtest assumed?"

Price-based backtests assume idealized execution. Real strategies hit slippage, racing, and fee dynamics that conventional backtesters can't model. Rewind shows you what would have actually happened — same execution engine, same account state, same fee dynamics as mainnet.

Security & Audit Firms
Forensic reconstruction
"Would this attack have worked at any point in the protocol's history?"

What previously took weeks of running custom infrastructure now takes hours of API calls. Verify exploits against the exact state they targeted. Test attack vectors at thousands of historical moments. Produce signed forensic artifacts that hold up to external review.

Trading Firms
Strategy validation against real conditions
"How much was I missing because of execution gaps?"

You know your strategy makes money. Rewind tells you what the chain looked like at the moments you captured opportunities — and what it looked like at moments you missed. The denominator that lets you size infrastructure investment rationally.

Roadmap

The substrate is shipping. Higher-level workflows next.

Rewind's foundation — the archive, the read primitives, and historical simulation — is in beta and ready to use. The async job framework on top (sweep, trigger, discovery) is built but undergoing additional testing and customer-workflow validation before release.

Phase 0
Account state archive
Continuous, deduplicated capture of every account write on Solana mainnet at sub-slot granularity, with rolling retention. The foundation everything else builds on.
Shipped
Phase 1
Simulation primitives
Multi-account consistent reads, transaction-position indexing, feature set computation per epoch, sysvar bundle reads, ALT resolution at historical slots. Everything the simulator needs to be accurate.
Shipped
Phase 2 · Beta now
Read methods + historical simulation
The six methods above. Drop-in compatible with Solana RPC where possible, with extensions for sub-slot precision and audit-trail metadata. ~25ms p50 reads, ~100ms p50 simulations. 99.78% shadow-validated match rate against on-chain reality. This is what you can use today.
Beta
Phase 3 · Coming
Sweep simulation & async jobs
Run a single transaction at every interval across a slot range. Async job framework with persistent state. Built and being validated; release follows once we have customer signal on real workloads.
Built · Validating
Phase 4 · Coming
Trigger-driven simulation
Define a condition over chain state. Find every moment that condition was true. Simulate a transaction at each. Categorically impossible to do efficiently without an indexed account-version archive.
Built · Validating
Phase 5 · Coming
Discovery workflows
Parameterized strategy templates that the system instantiates against historical state at every candidate moment, then filters by profitability. The most computationally expensive product, the most differentiated capability.
Built · Validating
Beta Access

Free for SVS RPC customers during the 60-day beta.

Rewind beta is available at no additional cost to existing SVS RPC customers. Free during the beta period; production pricing announced before beta ends and a clear conversion path.

What's Included

The substrate, fully accessible.

  • All six methods. Read primitives + historical simulation, no feature gating.
  • The full archive window. Same coverage as production will offer — growing toward 90 days as ingest accumulates.
  • Generous rate limits. Tiered to your existing SVS RPC plan; full details in the docs.
  • Full documentation. Every method, every parameter, every error code.
  • Direct support. Talk to the engineering team, not a tier-1 helpdesk.
What We Want From You

Real workloads. Real feedback.

  • Try Rewind on a question you actually care about. Not a contrived demo — something your team has wanted to investigate.
  • Tell us what's confusing. Documentation gaps, surprising behaviors, missing capabilities.
  • Share what worked. If you found something useful, we want to hear about it (and possibly co-author a case study).
  • Help us calibrate pricing. Production pricing lands before beta ends; your feedback shapes it.