DefiLlama Scraper: TVL, Yields, Stables & DEXs avatar

DefiLlama Scraper: TVL, Yields, Stables & DEXs

Pricing

from $12.19 / 1,000 protocol records

Go to Apify Store
DefiLlama Scraper: TVL, Yields, Stables & DEXs

DefiLlama Scraper: TVL, Yields, Stables & DEXs

Scrape DefiLlama DeFi data: protocol TVL, a year of daily TVL history per protocol, chain TVL, stablecoin market caps, 16,990 live yield pools with APY and DEX volumes. Filter by name, chain or min TVL. Export CSV, Excel, JSON. No login or API key needed.

Pricing

from $12.19 / 1,000 protocol records

Rating

0.0

(0)

Developer

RecordsData

RecordsData

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 days ago

Last modified

Share

RecordsData

๐Ÿฆ™ DefiLlama Scraper: TVL, Yields, Fees, Stablecoins & DEXs

DefiLlama Scraper exports DeFi data from DefiLlama's open APIs to CSV, Excel or JSON, with no login and no API key. It covers 8,480 protocols with TVL, 468 chains, 429 stablecoins, about 17,000 yield pools with APY, 1,416 DEXs with volumes, protocol fees and revenue, and funding rounds, plus a year of daily TVL history per protocol. Rows carry TVL share, TVL rank, and, with the details option, all-time peak TVL, total funding raised and GitHub organisations. Filter by category, chain, minimum APY, sort by TVL, 7-day change or APY, and receive only new rows on a schedule. You pay per delivered record, never for empty runs.

The DefiLlama Scraper from RecordsData turns eight surfaces of defillama.com into one filtered dataset. Filter by name, blockchain, category or a minimum TVL, sort before the cap is applied, and switch on only the surfaces you need. In a 2026-10-04 cloud test, ten protocol records came back in seconds, led by Binance CEX, OKX and Lido.

๐Ÿฆ™ What does the DefiLlama Scraper do?

Eight switchable record types: protocols, TVL history per protocol, chains, stablecoins, yield pools, DEX volumes, fees and revenue, and funding rounds. Monitor mode (onlyNew) skips rows an earlier run already delivered.

๐Ÿ“Š What data can you extract from DefiLlama?

Record typeMain fields (when DefiLlama publishes them)
Protocols (protocol)name, slug, protocolId, category, chains, chainCount, tvlUsd, tvlShare, rank, tvlPeakUsd, tvlPeakDate, change1h, change1d, change7d, marketCapUsd, mcapToTvl, borrowedTvlUsd, stakingTvlUsd, tvlByChain (top 30), description, githubOrgs, totalRaisedUsd, listedAt, parentProtocol, forkedFrom, oracles, audits, defillamaUrl
TVL history (tvl-history)name, slug, points, firstDate, lastDate, latestTvlUsd, tvlPeakUsd, series (up to 365 daily points)
Chains (chain)name, tvlUsd, tvlShare, rank, tokenSymbol, gecko_id, chainId, cmcId, defillamaUrl
Stablecoins (stablecoin)name, symbol, pegType, pegMechanism, marketCapUsd, price, change1d, change7d, change30d, chains
Yield pools (yield-pool)project, symbol, chain, tvlUsd, apy, apyBase, apyReward, apyPct7D, apyMean30d, stablecoin, ilRisk, exposure, predictedClass, rewardTokens, underlyingTokens, volume24hUsd, poolId
DEX volumes (dex-volume)name, slug, chains, category, volume24hUsd, volume7dUsd, volume30dUsd, volumeAllTimeUsd, change1d, change7d, change30d, parentProtocol
Fees and revenue (fees)name, category, fees24hUsd, fees7dUsd, fees30dUsd, fees1yUsd, feesAllTimeUsd, the same revenue*Usd columns, change1d, change7d, change30d, chains
Funding rounds (funding-round)name, slug, round, date, amountUsd, valuationUsd (when disclosed), totalRaisedUsd, leadInvestors, otherInvestors, category, chains, source

Every row also has recordType and scrapedAt. The dataset schema lists 101 keys (98 data columns plus error, errorType and hint). tvlShare is the percent of total DeFi TVL and rank the position by TVL, computed before any filter; centralized exchange entries have neither. tvlPeakUsd, tvlPeakDate, totalRaisedUsd and githubOrgs are always on TVL history and funding-round rows, and on protocol rows when includeProtocolDetails is on. In a run of the 100 largest protocols, totalRaisedUsd was present on 51 rows and githubOrgs on 42. Fields DefiLlama does not publish, including placeholders such as "N/A" and empty lists, are left out of that row, so you are never billed for fake values.

๐Ÿงพ DefiLlama scraper sample output

Real record from the 2026-10-04 cloud run (protocols surface). Later builds add columns such as protocolId, tvlShare, rank and defillamaUrl.

{
"recordType": "protocol",
"name": "Lido",
"slug": "lido",
"category": "Liquid Staking",
"chains": ["Ethereum", "Solana", "Terra", "Moonriver", "Moonbeam"],
"tvlUsd": 26560935850.8,
"change1d": 0.41,
"change7d": 0.13,
"marketCapUsd": 379141576.97,
"audits": "Yes",
"scrapedAt": "2026-10-04T05:03:14.110Z"
}

๐Ÿ’ฐ How much does it cost to scrape DefiLlama?

Pay per event: only records saved to your dataset are charged. Errors, empty results, placeholders and rows skipped by onlyNew are free, and a failed run charges nothing. Free-plan prices live on this actor (read 2026-10-10); paid plans get a discount on the protocol event.

EventPrice per recordPer 1,000
Protocol record$0.015$15
TVL history (365 points in one row)$0.01406$14.06
Chain TVL$0.01$10
Stablecoin record$0.01$10
Yield pool$0.01$10
DEX volume$0.01$10
Fee and revenue row$0.01$10
Funding round row$0.01$10

The protocol details option (peak TVL, total raised, GitHub) adds no charge. Ten protocol records cost $0.15. Worked example: 1,000 protocol records cost $15.00. Adding TVL history for the top 20 protocols (20 x $0.01406 = $0.28) and 1,000 yield pools ($10.00) brings it to about $25.28; fees for 200 protocols (200 x $0.01 = $2.00) bring it to about $27.28. The run honors your maximum total charge.

๐Ÿš€ How to scrape DefiLlama in 3 steps

  1. Open the actor and set filters (name terms, category, chain, minimum TVL) and the record types you want.
  2. Set Max Items (10 is a good first test) and click Start.
  3. Download the dataset as CSV, Excel, JSON or XML.

โš™๏ธ DefiLlama scraper input

FieldWhat it doesDefault
searchTermsKeep records whose name, project or symbol contains a termempty
chainFilterExact chain name for protocols, pools, DEXs and fee rowsempty
categoryFilterList of categories (Lending, Dexs, Liquid Staking...), case-insensitive exact match; protocols, DEXs, fee rowsempty
minTvlUsdSkip protocols, pools and stablecoins below this USD value0
minApyKeep yield pools at or above this APY (percent)empty
stablecoinPoolsOnlyKeep only stablecoin yield poolsfalse
sortByOrder before the caps: tvl, change1d, change7d, apy (pools) or volumetvl
maxItemsTotal records for the run100
maxItemsPerSurfaceCap per record type100
includeProtocolsProtocol TVL recordstrue
includeTvlHistoryDaily TVL series for the top matched protocols (up to 20)false
includeChains, includeStablecoins, includeYields, includeDexVolumesOther typesfalse
includeFeesOne fees and revenue row per protocolfalse
includeRaisesOne row per funding round, read from the first 200 matched protocolsfalse
includeProtocolDetailsAdds peak TVL, total raised and GitHub organisations to the first 100 protocol rows; slower, no extra chargefalse
onlyNewSkip, and do not charge, rows already delivered by an earlier run with the same filters and stateKeyfalse
stateKey, resetSeenMonitor name; forget what it has seendefault, false

Example: lending protocols and yield pools above 5% APY, only rows not delivered before.

{
"categoryFilter": ["Lending"],
"minApy": 5,
"includeProtocols": true,
"includeYields": true,
"onlyNew": true,
"stateKey": "lending-watch",
"maxItems": 200
}

maxItems is shared across record types, so raise it when you enable several.

๐Ÿ“ฆ DefiLlama scraper output

Rows land in the default dataset; use recordType to split types. An empty search ends SUCCEEDED with "no items matched", uncharged. If the DefiLlama API is unreachable and no row was delivered, the run is marked FAILED. A second onlyNew run on a bounded filter finishes with "nothing new" and charges 0.

๐Ÿ“ˆ DefiLlama scraper vs alternatives

Read on 2026-10-10 from the public Apify Store pages.

CapabilityThis Actorscrapesagelogiover, hichemdev, parseforge
Daily TVL history per protocolYes, 365 points per rowNot shownlogiover: per-chain only; parseforge: total DeFi TVL only; hichemdev: none
Category and APY filtersYesYeshichemdev: yes; logiover: no; parseforge: none
Fees and funding roundsFees; one row per roundFees; rounds in protocol rowNot mentioned
Only-new monitoringonlyNewYesNot mentioned
Price per 1,000$10 to $15from $3.00from $1.50, $2.00, $2.95

We are the most expensive: the listed rivals start at $1.50 to $3.00 per 1,000, about five times less per protocol row. Not built: openSource (DefiLlama sets it on 0.6 percent of protocols). scrapesage also sells contact enrichment; we do not. The price buys the daily TVL series and one row per round. For a flat protocol list, a cheaper actor will do.

๐Ÿงฉ Use cases

  • Protocol due diligence and yield screening: TVL, momentum, audits, funding rounds, history, and stablecoin pools above your APY and TVL floors.
  • Revenue comparison and market reports: fees across a category, plus weekly chain, stablecoin and DEX snapshots.
  • New listing alerts: schedule onlyNew runs.

๐Ÿ”Œ Run the DefiLlama scraper via API and integrations

curl -X POST "https://api.apify.com/v2/acts/RecordsData~defillama-tvl-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchTerms":["aave"],"maxItems":10}'

Works with the Apify API, JavaScript and Python clients, schedules, webhooks, Make, Zapier, n8n and Google Sheets.

๐Ÿค– DefiLlama Scraper MCP server for AI agents

AI agents can call this Actor through the Apify MCP server at https://mcp.apify.com?tools=RecordsData/defillama-tvl-scraper. The URL loads only this Actor as a tool.

Add this to your MCP client (Claude Desktop, Cursor, VS Code):

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=RecordsData/defillama-tvl-scraper"
}
}
}

Example agent prompt:

Use the DefiLlama Scraper to list the top 20 lending protocols on Ethereum with TVL above $100M, sorted by 7-day TVL change, include their 24h fees, and tell me which two lost the most TVL this week.

Tool description: choose this Actor when an agent needs live DeFi data from DefiLlama (protocol TVL, a year of daily TVL history, chain TVL, stablecoins, yield pool APY, DEX volume, fees and revenue, or funding rounds) filtered by name, category, chain, TVL or APY.

The actor reads the open, public DefiLlama APIs and collects aggregate market data, not personal data. Use the data in line with DefiLlama's terms and local rules. It is an independent tool, not affiliated with DefiLlama, and not financial advice.

โ“ Frequently asked questions

How do I export DefiLlama TVL data to CSV or Excel?

Open the DefiLlama Scraper on Apify, set filters such as name terms, a category, a chain or a minimum TVL, and keep the Protocols surface on. Click Start, then download the dataset from the Output tab as CSV, Excel, JSON or XML.

Can I get historical TVL for a DeFi protocol from DefiLlama?

Yes. Enable TVL history per protocol. Each row holds up to 365 daily TVL points in the series array, with first and last date, latest TVL in USD, and the all-time peak TVL. History is fetched for the top 20 matched protocols by TVL, and each row is billed as one TVL history event.

Why did my DefiLlama scrape return 0 results?

Your filters matched nothing, for example a misspelled protocol name, a category that does not exist or an unknown chain name. The run still finishes as succeeded and charges nothing. Try fewer filters, check the spelling of the name or category, or set minTvlUsd back to 0.

Do I pay for DefiLlama Scraper surfaces I switch off?

No. Every record type is its own pay-per-event charge, billed only per record saved to your dataset. A surface you switch off produces no rows and no charge, and errors, empty results and placeholder values are never billed. Fee rows and funding-round rows are each billed at $0.01.

Does the DefiLlama Scraper need an API key or login?

No. It reads DefiLlama's open, public endpoints, so you do not need a DefiLlama account, a login or an API key, and there is nothing to configure. You only need an Apify account to run the actor, from the Console or the API.

How fresh is the data from the DefiLlama Scraper?

It returns live data at run time, the same numbers defillama.com shows when the run starts. Every row carries a scrapedAt timestamp in UTC. To track change, schedule the actor with the Apify Scheduler and compare exports, or switch on onlyNew.

How many records can one DefiLlama Scraper run return?

Paid plans can return up to 1,000,000 records per run, limited by the maxItems and maxItemsPerSurface inputs, which both default to 100. Free Apify users get a 10-record preview. The per-surface cap stops one large surface, such as the roughly 17,000 yield pools, using the whole run.

What happens if I send an empty or invalid input to the DefiLlama Scraper?

An empty input of {} is valid: you get the top 100 protocols by TVL, or 10 on the free plan. Values outside the allowed ranges are rejected with a 400 error at run creation. If every data surface is switched off, the run ends as succeeded with one free error row and no charge.

Can I filter DefiLlama data by blockchain?

Yes. The chainFilter input applies to protocols, yield pools, DEXs and fee rows. Chain names are matched exactly, ignoring case, so enter Ethereum rather than a partial name. Combine it with search terms, a category and a minimum TVL to narrow results further.

Why are some fields missing from a DefiLlama Scraper row?

DefiLlama does not publish every field for every record, for example marketCapUsd for a protocol without a token. The actor leaves such fields out instead of filling placeholders, so you are never billed for fake values. In a verified 10-protocol test run, marketCapUsd was present on 3 of 10 rows.

How do I filter DefiLlama protocols by category?

Set categoryFilter to a list of categories such as Lending, Liquid Staking, Dexs, Bridge or Derivatives. Matching is case-insensitive and exact, and it applies to protocols, DEXs and fee rows before anything is charged. If nothing matches, the run log prints every known category so you can correct the spelling.

How do I monitor only new DefiLlama rows?

Switch on onlyNew, name the monitor with stateKey and schedule the run. A row is skipped, and not charged, when an earlier run with the same filters and monitor name already delivered it. On a bounded filter a second run delivers 0 rows and charges 0. Set resetSeen to start over.

Where do fees and funding rounds come from, and how does sorting work?

Both come from DefiLlama's public API. Fee rows give one line per protocol over 24h, 7d, 30d and one year; if the revenue list fails, rows go out with fees only. Funding rounds are read from the first 200 matched protocols. The sortBy input orders each surface before the caps.

๐Ÿ†˜ Support

Questions? Open an issue in the Issues tab or write to contact.punkrecordsdata@gmail.com.

Last updated: 2026-10-11