Data downloads

The figures, protocols, country rules, exchange listings and changes behind this site, as CSV files to download, with the JSON files the pages load and an RSS feed. Free to reuse for non-commercial purposes, with credit.

  • 4,535 days of history
  • 49 protocols
  • 73 jurisdictions
  • 98 listings
  • 114 changes

Every file is described below with its fields. Information only, not investment advice.

Downloads

Spreadsheet-ready CSV files, rewritten with each update. Open a file's columns for what each one holds.

One row per day from 20 May 2014 to 18 Oct 2026: private DeFi TVL, the privacy-asset float by coin, Zcash shielded supply, PriFi penetration and the private share of all DeFi.

Updated
Daily, after 01:20 UTC
Size
4,535 rows, 339 KB
Data from
DefiLlama (TVL, and the total DeFi TVL behind the share of DeFi), Coin Metrics Community Data (market caps and prices), zeczcash.com (shielded supply)
Columns 13
ColumnMeaning
dateDay, YYYY-MM-DD (UTC).
tvlExTornadoPrivate DeFi TVL excluding Tornado Cash, in millions of US dollars: DefiLlama TVL summed over the counted protocols.
tvlTotalThe same including Tornado Cash, in millions of US dollars.
floatTotalPrivacy-asset float: the combined market cap of the basket coins with daily history, in millions of US dollars. Pirate Chain (ARRR) has no daily history and is left out.
floatZECZcash market cap, in millions of US dollars.
floatXMRMonero market cap, in millions of US dollars.
floatOtherCombined market cap of Decred, Zano, Verge and Firo, in millions of US dollars.
shieldedZecZEC held in all Zcash shielded pools.
shieldedPctShielded ZEC as a percentage of total ZEC supply.
shieldedUsdValue of the shielded ZEC at that day's ZEC price, in millions of US dollars.
penetrationPriFi penetration: tvlExTornado divided by floatTotal, in percent.
defiSharePrivate share of DeFi: tvlExTornado divided by DefiLlama's total DeFi TVL across all chains that day (which leaves out liquid staking and double-counted TVL), in percent.
defiShareInclTornadoThe same including Tornado Cash: tvlTotal divided by that total, in percent.

Every protocol the tracker lists (49), with its type, status, current TVL and whether it counts in the totals.

Updated
Hourly
Size
49 rows, 12 KB
Data from
DefiLlama (TVL, chains, websites); PriFi.info (types, statuses, notes)
Columns 16
ColumnMeaning
slugDefiLlama's identifier for the protocol.
nameProtocol name.
typePriFi.info's classification: mixer, shielded-pool, confidential-tokens, private-dex-lending or unclassified.
statuslive, alpha, unconfirmed, unknown (not yet reviewed), inactive, sunset, deprecated, exploited or no-reliable-data.
countedtrue when the protocol counts in the current private DeFi TVL total.
tvlTVL in US dollars, from DefiLlama: refreshed hourly for counted protocols, otherwise the last daily value.
observedAtWhen that TVL was observed, ISO 8601 in UTC.
change7dChange in TVL over 7 days, in percent. Empty when not counted or with too little history.
change30dChange in TVL over 30 days, in percent.
chainsChains where DefiLlama tracks it, largest first, separated by semicolons.
untilLast day its history counts in the totals, YYYY-MM-DD. Empty for no end date.
excludetrue for a protocol that is never counted.
websiteThe project's own website. Empty where the domain is dead or parked.
notePriFi.info's note on the protocol.
noteSourceA link supporting the note.
reviewedWhen PriFi.info last reviewed the entry, YYYY-MM-DD.

The strongest rule on privacy coins in each of 73 jurisdictions on the Access and rules page, with what it means for exchanges, holders and mixers, and its sources.

Updated
Hourly; entries change when re-checked, last on 13 Oct 2026
Size
73 rows, 132 KB
Data from
PriFi.info's research; each row lists its sources
Columns 15
ColumnMeaning
codeTwo-letter country code (ISO 3166-1 alpha-2).
nameJurisdiction.
levelStrongest rule found: crypto-ban, exchange-ban, scheduled-ban, delisted-under-pressure, mixers-targeted or no-restriction-found.
summaryThe rule in one sentence.
holdingWhether individuals may hold privacy coins: legal, restricted, banned (shown as Barred) or unknown.
exchangesWhether exchanges may list them: allowed, barred, barred-from-date, effectively-barred or unknown.
mixersHow mixers are treated: no-specific-rule, sanctioned-or-prosecuted, banned (shown as Barred by rule) or unknown.
effectiveFromWhen the rule took effect, YYYY-MM-DD. Empty when no date applies.
instrumentThe law, rule or decision it rests on.
detailThe full entry.
groupeu for EU member states, otherwise empty.
inheritedtrue for an EU member that follows the EU entry and was not reviewed separately.
confidenceconfirmed (a primary source states it), reported (secondary sources only) or unconfirmed (not verified).
checkedOnWhen the entry was checked, YYYY-MM-DD.
sourcesLinks to the documents the entry rests on, separated by spaces.

Whether each of 14 large exchanges lists each of the seven privacy coins, since when and where, and whether it handles shielded Zcash addresses.

Updated
Hourly; entries change when re-checked, last on 13 Oct 2026
Size
98 rows, 44 KB
Data from
Exchanges' own market data and notices, linked in each row
Columns 11
ColumnMeaning
exchangeExchange identifier.
exchangeNameExchange name.
coinZEC, XMR, DCR, ZANO, ARRR, XVG or FIRO.
statuslisted, listed-restricted (not offered everywhere), delisted, never-listed or unknown.
sinceWhen the current status began, YYYY-MM-DD. Empty when not known.
regionsWhere a restricted listing is or is not offered.
shieldedFor ZEC, whether the exchange handles shielded Zcash addresses: supported, transparent-only, tex-only or unknown. Empty for other coins.
notePriFi.info's note on the listing.
confidenceconfirmed, reported or unconfirmed, as for the country rules.
checkedOnWhen the listing was checked, YYYY-MM-DD.
sourcesLinks to the market data and notices it rests on, separated by spaces.

Every entry on the Changes page, newest first: exchange listings, country rules, protocols, new listings and site notes, with their sources.

Updated
Hourly
Size
114 rows, 51 KB
Data from
PriFi.info, from the data above; each row lists its sources
Columns 10
ColumnMeaning
dateWhen it happened, or for a change found by the hourly comparison or the daily exchange check when it was found, YYYY-MM-DD.
kindexchange, rule, protocol, listing or site.
eventThe badge on the Changes page: an exchange event (listed, delisted, restricted, relisted, shielded-support, changed, added, removed), a difference found by the daily check of the exchanges' market data (check-listed, check-missing), a rule level, a protocol change (added, removed, status, counted, uncounted) or where a new listing stands (review, tracked, ignored, gone).
subjectThe exchange, jurisdiction, protocol or page concerned.
coinsFor exchange changes, the coins concerned, separated by spaces.
titleOne-line headline.
textWhat changed.
linkWhere to read more on PriFi.info.
sourcesLinks to the sources, separated by spaces.
idA stable identifier, also used in the RSS feed.

JSON files and the RSS feed

The pages load these files to keep their figures current, and you can use them too. The feed lists the latest changes.

The five headline figures on the overview, with when each was observed.

Updated
Every 5 minutes
Size
749 bytes
Data from
DefiLlama, ZecStats, Coin Metrics Community Data, zeczcash.com
Fields 7
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
tiles.tvlPrivate DeFi TVL in US dollars: value (excluding Tornado Cash), inclTornado, change30d (percent) and observedAt.
tiles.floatPrivacy-asset float in US dollars: value, assetCount, zecXmrShare (percent), change30d and observedAt.
tiles.shieldedZcash shielded supply: zec, pct (of supply), usd, change30dZec, observedAt and source.
tiles.penetrationPriFi penetration in percent: value, change30dPts (percentage points) and observedAt.
tiles.sharePrivate share of DeFi in percent: value (excluding Tornado Cash), inclTornado, total (DefiLlama's total DeFi TVL across all chains, in US dollars) with totalObservedAt, change30dPts (percentage points) and observedAt, the older of the two parts' times.
tiles.*.observedAtWhen the figure was observed, in Unix seconds.

What the overview and protocols pages show apart from the charts: the headline figures, every protocol, the coin basket, events and the state of each data source.

Updated
Every 5 minutes
Size
50 KB
Data from
DefiLlama, ZecStats, Coin Metrics Community Data, zeczcash.com; PriFi.info (classification)
Fields 10
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
methodologyVersionThe version of the method behind the figures.
tilesThe headline figures, as in live.json.
compositionThe bars on the overview and protocols pages: current TVL by type and the float by coin, in US dollars.
protocolsOne object per protocol with the fields of protocols.csv except until and exclude (observedAt in Unix seconds, chains as a list), plus spark, the TVL values behind its 90-day trend line, logo, and profile, the address of its profile page on PriFi.info or null.
assetsThe coin basket: symbol, name, privacy, mcap (US dollars), observedAt and share (percent).
assetRuleWhich coins the basket includes, and why.
countsProtocols tracked, counted, over $100K in TVL, and new listings awaiting review.
eventsEvery date on the Calendar page, from which the overview shows the next five: id (its entry on /calendar/ is #ev-<id>), date, endDate (the last day of an event over several days, or null), dateCertainty (fixed, expected or targeted), type, jurisdiction, title and source, the first of its sources.
sourcesEach data source with its cadence, when it was last fetched and whether it is delayed.

The daily series behind the charts, the same as history.csv, on one date axis.

Updated
Daily, after 01:20 UTC
Size
400 KB
Data from
DefiLlama (TVL, and the total DeFi TVL behind the share of DeFi), Coin Metrics Community Data (market caps and prices), zeczcash.com (shielded supply)
Fields 4
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
unitsThe units of the series: millions of US dollars, ZEC and percent.
daysThe date axis: each day at 00:00 UTC, in Unix seconds.
seriesThe 12 series of history.csv, each a list in step with days, with null where there is no value.

The daily check behind the Exchange access chart: for each day, how many of the 14 exchanges on the Access and rules page list each of the seven coins, from each exchange's own public market data, and what each exchange answered.

Updated
Daily, after 01:20 UTC
Size
3 days, 5 KB
Data from
The exchanges' own public market APIs, checked by PriFi.info
Fields 10
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
coinsThe seven coins, by ticker.
exchangesThe exchanges checked, as id and name.
daysThe date axis: each day with a check, at 00:00 UTC, in Unix seconds.
countsFor each coin, and for any of the seven (any), how many exchanges list it each day: at least one spot pair open for trading. An exchange that did not answer counts with its last answer of the previous seven days.
answeredHow many exchanges answered each day.
listedEach exchange's own answer for each coin and day: 1 listed, 0 not listed, null when it did not answer.
nowThe exchanges counted on the latest day, for each coin and for any.
latestThe pairs open for trading in each exchange's latest answer, such as ZEC/USDT, in the exchange's own tickers, with the day of that answer.
lastCheckThe latest check: its day, when it ran (Unix seconds), how many exchanges answered and which did not, with the error.

protocol-<id>.json

JSON

The daily series behind the chart on each of the eight protocol profiles, one file per profile: TVL for a protocol, or for a privacy coin its market cap, with the value of shielded ZEC for Zcash.

Updated
Hourly; the daily history after 01:20 UTC
Size
8 files, 308 KB
Data from
DefiLlama (TVL, current market caps), Coin Metrics Community Data (daily market caps and prices), zeczcash.com and ZecStats (shielded ZEC)
Fields 9
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
idThe profile: its page is /protocols/<id>/.
nameThe project.
measuretvl (total value locked, from DefiLlama) or mcap (market cap); null when the site holds no series for it.
coinFor a privacy coin, its symbol in the basket, such as XMR; otherwise null.
unitsThe unit of every series: US dollars.
daysThe date axis: each day at 00:00 UTC, in Unix seconds.
seriesOne object per line on the chart: key (tvl, mcap or shieldedUsd), label, source, and values, whole US dollars in step with days, with null where there is no value.
nowThe current values, in the order of series, and observedAt, when they were observed, in Unix seconds; null when there are none, as for a protocol no longer counted.

The daily series behind the charts on the Activity page: Monero and Zcash transactions, Railgun events and volume, Tornado Cash and Privacy Pools deposits, Privacy Cash and Aztec transactions, with the cross-checks between sources.

Updated
Hourly; new days after 01:20 UTC
Size
8 charts, 293 KB
Data from
Coin Metrics Community Data, ZecBlock, zeczcash.com, Railgun's indexers, PublicNode and Blockscout (Ethereum), 0xbow, Solana's public RPC, Aztecscan
Fields 9
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
unitsWhat the values count.
chartsOne object per chart, by id: monero, zcash, railgun, railgun-volume, tornado, privacy-pools, privacy-cash and aztec.
charts.*.unittransactions, deposits, events, or usd for US dollars.
charts.*.daysThe date axis: each complete UTC day at 00:00, in Unix seconds.
charts.*.seriesOne object per line: key, label and values, in step with days, with null where there is no figure (a day not yet read in full).
charts.*.marksDated events marked on the chart: at (Unix seconds) and label.
charts.*.latestThe newest day with a figure, and the values of every line that day.
checksFigures compared with a second source for the newest day both have: what, day, value, source and against (value and source).

The daily series behind the charts on the Anonymity sets page, and the latest reading of every series it stores, with when and where it was read: Tornado Cash deposits and unspent notes, note commitments in Railgun, Zcash and Privacy Cash, Zcash pool balances, Privacy Pools deposits, and Monero's ring size and outputs.

Updated
Daily, after 01:20 UTC
Size
9 charts, 134 KB
Data from
The projects' own contracts and nodes, read through PublicNode (dRPC as a fallback) and the Solana Foundation's public RPC; zec.rocks (Zcash note trees); public Monero nodes and GitHub (Monero); ZecStats and zeczcash.com (Zcash pool balances); Railgun's indexers (Railgun history)
Fields 9
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
pageThe page the file belongs to.
lastRunWhen the daily step last ran, ISO 8601 in UTC.
unitsWhat the values count.
creditsWhere the readings come from.
chartsOne object per chart: id, title and unit (deposits, notes, outputs, members or ZEC).
charts.*.daysThe date axis: each day with a reading, at 00:00 UTC, in Unix seconds.
charts.*.seriesOne object per line: key, label and values, in step with days, with null where there is no reading.
latestThe newest reading of every stored series, by series id: value, observedAt (Unix seconds) and source.

The newest 300 events behind the live ticker on the Activity page (transactions, and new blocks on Monero and Aztec), newest first, as public nodes and explorers on six chains report them. It holds no addresses, and amounts only for the fixed amounts of Tornado Cash pools and fully transparent Zcash transactions. The events are kept for 7 days, then deleted.

Updated
As transactions arrive, at most once a second
Size
300 events
Data from
Public nodes and block explorers on six chains, named on the Sources page
Fields 13
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
eventsThe newest 300 events, newest first.
events.*.idA unique id: the time in milliseconds, the chain and the first 8 characters of the hash.
events.*.tsWhen the watcher saw the event (not the time of its block), ISO 8601 in UTC, to the millisecond.
events.*.chainethereum, monero, zcash, solana, liquid or aztec.
events.*.protocoltornado-cash, railgun, privacy-pools, monero, zcash, privacy-cash, liquid or aztec.
events.*.kinddeposit, withdrawal, shield, unshield, transfer, transaction, shielded-transaction, transparent-transaction or block.
events.*.detailA short description, such as the pool ("10 ETH pool"), the number of shielded actions or the fee.
events.*.amountvalue and unit, for the fixed amount of a Tornado Cash pool or the total output of a fully transparent Zcash transaction; otherwise null. The variable amounts of Railgun, Privacy Pools and Privacy Cash are left out, since a deposit and a withdrawal of the same amount minutes apart are easy to pair.
events.*.hashThe transaction hash (or for a block, its hash).
events.*.urlThe transaction or block on a public block explorer, or null.
events.*.blockThe block number (on Solana, the slot), or null for a transaction not yet in a block.
events.*.sourceThe domain of the node or explorer it came from.

The state of the connection to each chain behind the live ticker: whether it is connected, when it last saw a transaction, how far behind it is and its last error.

Updated
Every 10 seconds, and when a connection opens, drops or fails
Size
6 chains
Data from
PriFi.info's watcher, from the sources named on the Sources page
Fields 13
FieldMeaning
generatedAtWhen the file was written, ISO 8601 in UTC.
watcherStartedAtWhen the watcher last started, ISO 8601 in UTC.
chainsOne object per chain source.
chains.*.chainethereum, monero, zcash, solana, liquid or aztec.
chains.*.protocolThe protocols it follows there, separated by commas where one source serves several (on Ethereum, tornado-cash,railgun,privacy-pools).
chains.*.connectedtrue when its last request succeeded.
chains.*.lastEventAtWhen it last reported an event, ISO 8601 in UTC, or null.
chains.*.lastBlockThe newest block height it has seen (on Solana, the slot), or null.
chains.*.lag_sSeconds since the source last heard from its node or explorer, or null before the first answer.
chains.*.errorThe error of its last request, or null.
chains.*.methodwebsocket (news pushed by the node, on Ethereum and Solana) or poll (asked at an interval).
chains.*.interval_sHow often it asks when it has no websocket, in seconds.
chains.*.sourceThe domain of the node or explorer.

The newest 50 changes from the Changes page as an RSS 2.0 feed, for any feed reader.

Updated
Hourly
Size
50 items, 41 KB
Data from
PriFi.info, with the sources of each change
Fields 6
FieldMeaning
titleOne-line headline.
linkWhere to read more on PriFi.info.
guidThe change's identifier, as in changes.csv (id).
pubDateThe change's date, at 00:00 UTC.
categoryExchange listings, Country rules, Protocols, New listings or Site notes.
descriptionWhat changed, with links to its sources, as HTML.

The site also publishes sitemap.xml, the list of its pages for search engines.

Licence and credits

Licence

The files are published under the Creative Commons Attribution-NonCommercial 4.0 International licence (CC BY-NC 4.0). You may copy, share and adapt them for non-commercial purposes if you credit PriFi.info, link to the licence and say what you changed.

The non-commercial condition comes from Coin Metrics Community Data, which is published under CC BY-NC 4.0 and is part of the daily history.

File format

CSV files are UTF-8 text with a header row and commas between fields; a field holding a comma, a quote or a line break is wrapped in double quotes, and rows end in CRLF, as in RFC 4180. Dates are YYYY-MM-DD and times ISO 8601, both in UTC. An empty field means no value. Text that a spreadsheet could read as a formula starts with an apostrophe.

JSON files give times as Unix seconds (observedAt, days) or ISO 8601 (generatedAt).

Credit the original sources

Figures from other publishers keep their own terms. Credit them as the Sources page does:

DefiLlama
TVL, including the total DeFi TVL across all chains behind the share of DeFi, chains and current market caps. "Data: DefiLlama", under the DefiLlama terms of use.
Coin Metrics Community Data
Daily market caps and prices. "Source: Coin Metrics Community Data", CC BY-NC 4.0.
ZecStats
Live Zcash shielded pools. "Data: ZecStats (https://zecstats.org), CC BY 4.0".
zeczcash.com
Daily Zcash shielded supply. "Data: zeczcash.com"; terms not stated.

The country rules and exchange listings are PriFi.info's own research. Each row links the documents it rests on, which keep their own terms.

Information only, not investment, legal or tax advice. Figures from third parties can be revised; check the original source before relying on one.