L2BEAT Rollup TVL Scraper
Pricing
from $8.00 / 1,000 results
L2BEAT Rollup TVL Scraper
Scrapes L2BEAT rollup projects with total value locked, maturity stage, category, and links. Filter by layer type, rollup category, stage, and archived status. Returns a flat row per project.
Pricing
from $8.00 / 1,000 results
Rating
0.0
(0)
Developer
Acquisition Automation Co.
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
22 days ago
Last modified
Categories
Share

🔗 L2BEAT Rollup TVL Scraper
Export every Ethereum rollup L2BEAT tracks as a row: value secured broken into native, canonical and external, the 7 day change, the maturity stage, the rollup category, the stack it runs on, and L2BEAT's five risk verdicts. 20 fields per project. No API key, no registration, no login.
L2BEAT is the reference scoreboard for Ethereum scaling. It ranks rollups by the value they secure and grades each one on sequencer failure, state validation, data availability, exit window and proposer failure. The site is built to be read, not exported: the risk grades are icons in a table and the value breakdown sits behind a hover. This Actor returns the whole board as rows, with the risk verdicts as structured data instead of colored squares.
| Who uses it | What they use the board for |
|---|---|
| 💼 Crypto funds and investors | Ranking chains by value secured and tracking where it moved over the last week |
| 🔍 Diligence teams on infrastructure deals | Checking a target chain's maturity stage and risk grades before committing |
| 🏗 Protocol and ecosystem teams | Benchmarking their own rollup against the stage and stack of every competitor |
| 📊 Researchers and analysts | Keeping a dated series of value secured per chain instead of screenshots |
📋 What it does
💡 Why it matters: two chains can report the same headline number and hold it very differently. One splits value into native, canonical and external, the other does not, and the risk grades say who can actually stop a withdrawal.
- 💰 Returns the value secured, split four ways: total, native, canonical and external, as numbers.
- 📈 Includes the 7 day change per project, positive or negative.
- 🎓 Carries the maturity stage,
Stage 0,Stage 1,Stage 2orNot applicable, which is L2BEAT's judgement on how far decentralised a chain really is. - 🛡 Returns the five risk verdicts as structured rows, each with its name, its value and whether L2BEAT rates it good, bad or in between.
- 🧱 Names the stack and the host chain.
providersgives the framework, for exampleOP Stack, andhostChaingives what it settles to. - 🔎 Filters before it collects, by layer type, rollup category, maturity stage, and whether archived projects are included.
- 💾 Exports to CSV, Excel, JSON or XML, from the run page or the API.
📊 Output
Every project is one flat row, with the same 20 fields on every run. Values are numbers, not formatted strings.
| Field | Type | Description |
|---|---|---|
🏷 name | string | Project name, for example Arbitrum One |
🔤 slug | string | L2BEAT's URL slug for the project |
🆔 id | string | L2BEAT's internal project id. Matches slug on most projects |
🧩 type | string | layer2 or layer3 |
📚 category | string | Rollup category, for example Optimistic Rollup, ZK Rollup, Validium, Optimium |
🎓 stage | string | Maturity stage, for example Stage 1 |
⛓ hostChain | string | The chain it settles to, for example Ethereum |
🗄 isArchived | boolean | true if L2BEAT has archived the project |
🔬 isUnderReview | boolean | true if L2BEAT is currently reviewing the project's data |
🎯 purposes | array | What the chain is for, for example ["Universal"] |
🏗 providers | array | Stack or framework, for example ["OP Stack"] |
💰 tvsTotal | number | Total value secured |
🪙 tvsNative | number | The part issued natively on the chain |
🌉 tvsCanonical | number | The part bridged through the canonical bridge |
🔀 tvsExternal | number | The part bridged through external bridges |
📈 tvsChange7d | number | Change in value secured over 7 days, as a decimal fraction. Negative when it fell |
🛡 riskSummary | array | L2BEAT's five risk verdicts. Each entry has name, value and sentiment |
🔗 l2beatUrl | string | Link to the project page on l2beat.com |
🕒 scrapedAt | string | ISO timestamp of collection |
⚠️ error | string | null on a normal row |
Example rows
{"name": "Base Chain","slug": "base","id": "base","type": "layer2","category": "Optimistic Rollup","stage": "Stage 1","hostChain": "Ethereum","isArchived": false,"isUnderReview": false,"purposes": ["Universal"],"providers": ["OP Stack"],"tvsTotal": 14679392256,"tvsNative": 6922889659.96875,"tvsCanonical": 2762977991.3720617,"tvsExternal": 4993527184.634766,"tvsChange7d": 0.013784235259057587,"riskSummary": [{"name": "Sequencer Failure","value": "Self sequence","sentiment": "good"},{"name": "State Validation","value": "Fraud proofs (1R, ZK)","sentiment": "good"},{"name": "Data Availability","value": "Onchain","sentiment": "good"},{"name": "Exit Window","value": "None","sentiment": "bad"},{"name": "Proposer Failure","value": "Self propose","sentiment": "good"}],"l2beatUrl": "https://l2beat.com/scaling/projects/base","scrapedAt": "2026-09-14T16:36:03.749Z","error": null}
{"name": "Arbitrum One","slug": "arbitrum","id": "arbitrum","type": "layer2","category": "Optimistic Rollup","stage": "Stage 1","hostChain": "Ethereum","isArchived": false,"isUnderReview": false,"purposes": ["Universal"],"providers": ["Arbitrum"],"tvsTotal": 12137410560,"tvsNative": 4334244495.800781,"tvsCanonical": 3543731940.660411,"tvsExternal": 4259442638.6777573,"tvsChange7d": -0.04334964427890653,"riskSummary": [{"name": "Sequencer Failure","value": "Self sequence","sentiment": "good"},{"name": "State Validation","value": "Fraud proofs (INT)","sentiment": "good"},{"name": "Data Availability","value": "Onchain","sentiment": "good"},{"name": "Exit Window","value": "None","sentiment": "bad"},{"name": "Proposer Failure","value": "Self propose","sentiment": "good"}],"l2beatUrl": "https://l2beat.com/scaling/projects/arbitrum","scrapedAt": "2026-09-14T16:36:03.862Z","error": null}
✨ Why choose this Actor
| What you get | |
|---|---|
| Risk grades as data | The five verdicts come back with a name, a value and a sentiment, so they can be sorted and filtered. |
| The value breakdown, not one number | Native, canonical and external are separate columns. |
| Filters applied before the cap | Narrow to ZK rollups at Stage 1 and maxItems counts only those. |
| Archived projects are opt in | Dead chains stay out of the dataset unless you ask for them. |
| You pay per row | No subscription. A filter that matches nothing costs nothing. |
🚀 How to use it
- Create a free Apify account. New accounts start with $5 of credit.
- Open the Actor and select Try for free.
- Leave the filters empty for the whole board, or set
type,categoryandstage. - Set
maxItemsto cap the run, and switch onincludeArchivedif you want retired projects. - Select Start, then export from the Dataset tab as CSV, Excel, JSON or XML.
A first run:
{"maxItems": 10,"includeArchived": false}
Only mature ZK rollups:
{"type": "layer2","category": "ZK Rollup","stage": "Stage 1","maxItems": 100,"includeArchived": false}
⚙️ Input
| Field | Required | Description |
|---|---|---|
maxItems | No | Maximum rollups to collect in a run. Defaults to 10 |
type | No | layer2 or layer3. Empty includes every type |
category | No | Optimistic Rollup, ZK Rollup, Validium, Optimium or Other. Empty includes every category |
stage | No | Stage 0, Stage 1, Stage 2 or Not applicable. Empty includes every stage |
includeArchived | No | Include projects L2BEAT has archived. Off by default |
💰 Pricing
Pay per result. No subscription, and no Apify platform usage on top.
| Apify plan | Free | Bronze | Silver | Gold | Platinum | Diamond |
|---|---|---|---|---|---|---|
| Per project row | $0.01 | $0.00933 | $0.00867 | $0.008 | $0.008 | $0.008 |
| Rows collected | Cost on the Free plan |
|---|---|
| 100 | $1.00 |
| 1,000 | $10.00 |
| 10,000 | $100.00 |
Free plan runs return up to 10 rows as a preview. Any paid Apify plan lifts that to 1,000,000 per run.
🔌 Integrate with any app
The dataset is available through the Apify API as soon as the run finishes. Use run-sync-get-dataset-items for a one-shot call, webhooks to trigger what happens next, or the Make, Zapier, Airbyte and LangChain integrations listed on the Actor page.
🤖 Use with an AI agent
Give an agent live access to the board over the Model Context Protocol:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=acquistion-automation/l2beat-rollup-tvl-scraper"
Then ask it in plain language which Stage 1 rollups lost value this week and have it read the numbers back.
❓ Frequently asked questions
What is the difference between tvsNative, tvsCanonical and tvsExternal?
Native is value issued on the chain itself, canonical is value bridged through the chain's own bridge, and external is value bridged through a third party bridge. tvsTotal is the headline figure L2BEAT shows.
How do I read riskSummary?
It is a list of five entries. Each has a name, the verdict as value, and a sentiment that says how L2BEAT rates it. In CSV exports the list is flattened into columns by the exporter.
Is tvsChange7d a percent?
It is a decimal fraction over seven days, and it is negative when value fell. Multiply by 100 for a percentage.
Why did I get fewer rows than maxItems?
The filters narrow the board before the cap. A combination like layer3 plus Stage 2 matches very few projects.
Do I need a proxy? No. Requests and retries are handled inside the Actor and included in the price.
What can I export? CSV, Excel, JSON and XML from the run page, or JSON straight from the API.
🔗 More from Acquisition Automation Co.
- BitMart Spot Markets Scraper
- SEC Investor Alerts Scraper
- FTC Actions Scraper
- 404 Media Articles Scraper
- BizBuySell Scraper
About Acquisition Automation Co.
We build automation for people buying businesses. The repetitive part of an acquisition search, checking listings, pulling public records, tracking owners and assets, is work a machine should do, so the buyer's time goes into judging deals instead of collecting them.
We add new Actors regularly. If there is a source you need and do not see here, tell us.
🆘 Support
Open an issue in the Issues tab of this Actor with your run ID, the input you used, and what you expected to get back.
⚠️ Disclaimer
This Actor is independent and is not affiliated with, endorsed by, or sponsored by L2BEAT. It collects only publicly available data, and nothing here is investment advice. You are responsible for using that data in compliance with the source's terms of service and applicable law.