How it works
Every number on a Rewind card is either exact or wears a tilde — and this page tells you which, and why.
What this reads
Five endpoints on the free public Kaspa API
(api.kaspa.org), nothing else:
/addresses/{addr}/full-transactions-page— your oldest transaction (one call,after=1&limit=1) and a newest-first scan of your history/addresses/{addr}/transactions-count— your exact lifetime transaction count/addresses/{addr}/balance— current balance (page-only; never on a card)/addresses/{addr}/name— known public labels, like the explorer donation address/info/virtual-chain-blue-score— the DAG's current tip, for the age-in-blocks math
A transaction with no inputs is a coinbase — a mining reward paid straight from a block. That's the whole mined-vs-bought detector: no heuristics, just the shape of your first (and every scanned) transaction.
The era table
All boundaries UTC. Your era is where your first transaction lands.
| Era | From | Source |
|---|---|---|
| CPU · The Torchbearer | Nov 7, 2021 | mainnet launch |
| GPU · The Prospector | Dec 6, 2021 | first open-source GPU miner released (kaspa wiki, project prehistory) |
| ASIC · The Industrialist | Jul 1, 2023 | IceRiver KS-series ASICs arriving (2023 retrospective) |
| Crescendo · The Speedrunner | May 5, 2025, 15:00 UTC | 10-bps hardfork activation, DAA score 110,165,000 |
| Toccata · The Covenant Kid | Jun 30, 2026 | covenants activation, DAA score 474,165,565 |
The GPU→ASIC line is genuinely fuzzy — GPU rigs and early ASICs overlapped for months. We chose Jul 1 2023 and we're saying so. If your badge feels off by an era, argue with us: the boundary is published, not hidden.
The witnessed-% arithmetic
"Witnessed ~X% of every block Kaspa has ever produced" is a ratio of two block-count estimates from the same piecewise-linear interpolation over three anchors:
- block 0 — mainnet launch, Nov 7, 2021
- DAA 110,165,000 — Crescendo, May 5, 2025, 15:00 UTC
- DAA 474,165,565 — Toccata, Jun 30, 2026
Blocks-since-your-first-tx divided by blocks-since-launch, both read
off that line. Because it's a ratio of two values from the same
function, small block-rate wobbles mostly cancel — but it's still an
estimate, so it always wears a ~, shows at most one
decimal, and caps at 99.9.
Explicitly: this is a share of blocks produced since your first tx — it is NOT a claim about how early you were vs other addresses. No public data source exists for a true address percentile, so we don't claim it.
What the scan cap means
We scan your newest 2,000 transactions (4 pages of 500). Stats that need the scan — mined share, hodl streak, biggest day — are labeled on the card itself when they cover less than your full history. These stay exact for any wallet size, cap or no cap:
- first-tx date and era badge (one direct oldest-tx call)
- lifetime transaction count (the count endpoint)
- days on Kaspa, and whether your first tx was a mining reward
- witnessed-% (derived from the exact first-tx date)
A hodl streak from a capped scan renders as "≥ N days" — an honest floor, never a guess.
Privacy
Everything here is public DAG data — the card shows nothing that isn't already readable by anyone with your address. Two deliberate choices on top of that:
- Balance never appears on a card. A shareable image that pairs your face with your holdings is a risk we won't print. On the page it sits behind a tap, for your eyes.
- The share URL contains your address because a Kaspa address is public by design. Nothing is stored server-side beyond a 1-hour cache; no accounts, no cookies, no wallet connect, ever.
Who made this
The same solo dev behind kascov.io (the Kaspa covenant explorer) and fees.kas (your lifetime Kaspa fees vs what the big chains would've charged). Your wallet's name here is drawn with the same deterministic generator kascov uses — same address, same creature, everywhere.