The Zebra Scraper $2.5/1k💰 | Car Insurance Rates | Market Data avatar

The Zebra Scraper $2.5/1k💰 | Car Insurance Rates | Market Data

Pricing

from $2.00 / 1,000 results

Go to Apify Store
The Zebra Scraper $2.5/1k💰 | Car Insurance Rates | Market Data

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

Ahmed Jasarevic

Maintained by Community

Actor 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

FieldTypeRequiredDefaultNotes
startUrlsarrayNoThe Zebra auto, average-cost, homeowners, and renters insurance pagesURLs to start scraping from. The actor also auto-discovers URLs from the sitemap until the result limit is reached.
maxResultsintegerNo10Maximum number of structured records to return (one per table row, statistic, rate, or carrier). Set higher for fuller runs.
proxyConfigurationobjectNo{ "useApifyProxy": false }Proxy settings for bypassing bot detection. Residential proxies recommended for The Zebra.
fetchContentbooleanNotrueIn-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.
outputModestringNorowsrows — one record per table row, statistic, rate, and carrier. page — one whole-page object (headings, paragraphs, lists) per URL.
maxRowsPerPageintegerNo40How 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.
extendOutputFunctionstringNo""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.
customMapFunctionstringNo""JavaScript to map each item to a different format. Receives the scraped item and must return the mapped item.
debugTrafficbooleanNofalseLogs 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:

FieldTypeDescription
recordTypestringcarrier, rate, statistic, or table
urlstringSource page the record was scraped from
titlestringPage title or first heading
tableIndexnumberIndex of the table within the page
tableCaptionstringCaption of the parsed table
columnsarray of stringColumn headers of the parsed table
rowobjectThe table row values keyed by column (e.g. { "Company": "GEICO", "Avg. 6 Mo. Premium": "..." })
namestringCarrier name (carrier records)
logostringCarrier 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.

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.
  • maxResults caps 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 (default true) 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.
  • rateInfo values 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 one result event (≈$0.0025) per dataset record.

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.