The Zebra Scraper $2.5/1k💰 | Car Insurance Rates | Market Data
Pricing
from $2.00 / 1,000 results
The Zebra Scraper $2.5/1k💰 | Car Insurance Rates | Market Data
The Zebra is one of the largest U.S. auto & home insurance comparison marketplaces. Extract The Zebra car insurance quotes, auto insurance rate data, premium estimates, carrier lists, and insurance industry statistics into structured JSON for price monitoring and market research.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Ahmed Jasarevic
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
The Zebra Scraper — Car Insurance Rates & Market Data
Extract The Zebra's car insurance rate data, average premium estimates, insurance carrier lists, and industry statistics into structured records for insurance price monitoring, rate research, and market analysis.
Main Use Cases
- Car insurance price monitoring — track auto insurance rates and premium estimates over time without visiting the site
- Auto insurance rate research — collect average cost of car insurance figures, 6-month premiums, and monthly payment estimates from The Zebra's comparison tables
- Insurance carrier comparison — extract carrier names, logos, and rate-table data side by side for competitive analysis
- Insurance market statistics — gather industry statistics and data points (cost averages, state-level figures, coverage trends)
- Building structured rate databases — assemble insurance rate and premium data for dashboards, models, or research reports
How It Works
The actor crawls The Zebra's public pages (auto insurance, average cost of car insurance, homeowners, and renters insurance by default) and parses every table, statistic, and carrier mention into structured JSON records. In the default rows output mode it emits one record per table row, statistic, rate, or carrier — in page mode it returns whole-page content (headings, paragraphs, lists, links) for text-heavy pages. It auto-discovers additional URLs from The Zebra's sitemap until the chosen result limit is reached.
Track Car Insurance Rates Across the US
The Zebra publishes current car insurance cost data by company, state, and coverage type. This actor turns those publicly visible tables into clean, reusable JSON — one record per rate row, statistic, and carrier — so you can store, query, and trend insurance pricing instead of copying tables by hand.
Build Auto Insurance Rate Comparison Databases Without an Official API
The Zebra has no public API for bulk insurance rate data. This actor provides a single structured extraction path across The Zebra's rate surface — useful if you are building a rate-comparison dashboard, a personal-finance app, or a research dataset that would otherwise require dozens of manual page visits.
Input
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
startUrls | array | No | The Zebra auto, average-cost, homeowners, and renters insurance pages | URLs to start scraping from. The actor also auto-discovers URLs from the sitemap until the result limit is reached. |
maxResults | integer | No | 10 | Maximum number of structured records to return (one per table row, statistic, rate, or carrier). Set higher for fuller runs. |
proxyConfiguration | object | No | { "useApifyProxy": false } | Proxy settings for bypassing bot detection. Residential proxies recommended for The Zebra. |
fetchContent | boolean | No | true | In-page fetch mode (fast, cheap): one browser session per IP, all content fetched via same-origin fetch(). Works only for thezebra.com URLs. Disable to fall back to full browser rendering with automatic link discovery. |
outputMode | string | No | rows | rows — one record per table row, statistic, rate, and carrier. page — one whole-page object (headings, paragraphs, lists) per URL. |
maxRowsPerPage | integer | No | 40 | How many records to take from a single page before moving to the next URL. Lower values spread results across more pages; higher values keep denser tables intact. |
extendOutputFunction | string | No | "" | JavaScript to add or override output fields. Receives the data scraped so far and the Cheerio $ object; must return an object with the fields to add or override. |
customMapFunction | string | No | "" | JavaScript to map each item to a different format. Receives the scraped item and must return the mapped item. |
debugTraffic | boolean | No | false | Logs all XHR/fetch/JSON API calls made by the pages, to discover backend API endpoints. Use with a small maxResults while probing. |
Example Input
Run the default pages with 100 records:
{"maxResults": 100}
Target specific pages:
{"startUrls": [{ "url": "https://www.thezebra.com/auto-insurance/average-cost-of-car-insurance/" },{ "url": "https://www.thezebra.com/auto-insurance/" }],"maxResults": 200,"proxyConfiguration": { "useApifyProxy": true }}
Output
In rows mode each dataset record is one scraped table row, statistic, rate, or carrier:
| Field | Type | Description |
|---|---|---|
recordType | string | carrier, rate, statistic, or table |
url | string | Source page the record was scraped from |
title | string | Page title or first heading |
tableIndex | number | Index of the table within the page |
tableCaption | string | Caption of the parsed table |
columns | array of string | Column headers of the parsed table |
row | object | The table row values keyed by column (e.g. { "Company": "GEICO", "Avg. 6 Mo. Premium": "..." }) |
name | string | Carrier name (carrier records) |
logo | string | Carrier logo URL (carrier records) |
In page mode each record is a whole-page object: url, title, headings, paragraphs, lists, links, images, statistics, carriers, rateInfo, and structuredData.
Example Output (rows mode — rate table row)
{"recordType": "rate","url": "https://www.thezebra.com/auto-insurance/average-cost-of-car-insurance/","title": "The Average Cost of Car Insurance in 2026","tableIndex": 0,"tableCaption": "Average auto insurance premiums by state","columns": ["State", "Liability only", "Full coverage"],"row": { "State": "Ohio", "Liability only": "$280", "Full coverage": "$892" }}
Example Output (rows mode — carrier record)
{"recordType": "carrier","url": "https://www.thezebra.com/auto-insurance/","title": "Auto Insurance Comparison","name": "Progressive Insurance","logo": "https://www.thezebra.com/img/progressive.png"}
Integrations & Automation
- Apify API — call the actor programmatically from any language and read results as JSON, CSV, or Excel
- Webhooks — trigger downstream workflows after each run
- Zapier / Make — connect dataset output to spreadsheets, databases, or notification tools
Because insurance rates move regularly, run this actor on a weekly schedule for rate tracking and price monitoring, or monthly for slower-moving market-statistic collection. Recurring runs keep stored rate data fresh for comparison and trend analysis.
Related Actors
- Coverfox Scraper — Indian Insurance Comparison Plans — insurance plans with premiums and claim settlement ratios (India)
- MoneySuperMarket Scraper — UK Financial Comparison — insurance and financial deals with provider details (UK)
- Comparis Scraper — Swiss Insurance & Telecom Comparison — insurance plans with prices and provider ratings (Switzerland)
- Moneyland Scraper — Swiss Financial Comparison Data — insurance premiums and financial comparison data (Switzerland)
- Italy Car Insurance Prices — IVASS Data — official Italian car insurance premiums by province (Italy)
FAQ
Why use this actor instead of The Zebra's official API?
The Zebra does not provide a public API for bulk rate or premium extraction, and there is no official dataset or export endpoint for its comparison tables. This actor pulls the same publicly displayed rate tables, statistics, and carrier data into a single structured dataset, one record per row.
What are the alternatives to The Zebra for car insurance rate data?
The main alternatives are other insurance comparison and data sources such as ValuePenguin, Bankrate, Insurify, and state insurance department data; several are covered by dedicated Apify actors (see Related Actors). This actor is specific to The Zebra's auto, homeowners, and renters insurance pages.
Can I monitor car insurance rate changes over time?
Yes. Running the actor on a schedule captures each row with the source url and the values as scraped, so you can build a time series of insurance rates and premiums and detect movement over weeks or months.
Does this actor return carrier comparisons?
Yes. Insurance comparison tables include carrier names and, where available, logos — captured as carrier records with name and logo fields — alongside the rate-table rows that compare carriers side by side.
Can I extend or reshape the output?
Yes. Use extendOutputFunction to add or override fields with custom JavaScript (the Cheerio $ object is provided), or customMapFunction to map each item into a different format.
SEO Keywords
the zebra scraper, car insurance rate data, auto insurance rates, car insurance price monitoring, average cost of car insurance, insurance premium estimates, car insurance comparison data, insurance carrier data, auto insurance market research, insurance rate database, thezebra data extraction, 6-month insurance premium, car insurance by state, insurance industry statistics, the zebra api alternative, car insurance quotes data, insurance rate monitoring, homeowners insurance data, renters insurance data, insurance comparison marketplace data
For AI Agents & LLM Apps
Returns one dataset record per scraped The Zebra table row, statistic, rate, or carrier, with fields: recordType, url, title, tableIndex, tableCaption, columns, row, name, logo (carrier records). In page mode each record contains headings, paragraphs, lists, links, images, statistics, carriers, rateInfo, and structuredData.
Minimal working input (runs the default The Zebra pages):
{ "maxResults": 50 }
Variant — full-page content mode for text-heavy pages:
{"outputMode": "page","maxResults": 20}
Behaviors an agent should know:
- With empty input the actor uses its built-in default list of The Zebra auto, average-cost, homeowners, and renters insurance URLs — a valid run needs no
startUrls. maxResultscaps the number of structured records (one per table row, statistic, rate, or carrier). The schema default is 10 — always set it explicitly to control run size and cost.fetchContent(defaulttrue) is the fast in-page fetch mode and works only for thezebra.com URLs; disable it for non-thezebra.com start URLs, which then fall back to full browser rendering with automatic link discovery.outputMode: "rows"(default) emits one record per table row/carrier/statistic;outputMode: "page"emits one whole-page object per URL. Pick per use case: rows for rate tables, page for article/statistics pages.maxRowsPerPage(default 40) controls breadth: lower values spread results across more URLs, higher values keep dense tables intact.rateInfovalues are raw page text (e.g.$125/month,$1,500/year) — parse amounts downstream as needed.- Billing model: pay-per-event — one
Actor Start(≈$0.0005) plus oneresultevent (≈$0.0025) per dataset record.
Legal & Compliance Disclaimer
This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by The Zebra or any insurance carrier whose data appears on thezebra.com. It accesses only publicly visible insurance comparison and rate pages and does not bypass login or access non-public data. Users are responsible for ensuring their use complies with The Zebra's Terms of Service and applicable data-protection and consumer-finance laws. The output contains publicly displayed rate, premium, and carrier information, not consumer personal data; do not use any extracted data for unauthorized or misleading purposes.