# Autotrader Zipcode Scraper (`e-commerce/autotrader-zipcode-scraper`) Actor

Scrape car listings from AutoTrader.com by ZIP code, radius, make, and condition, including vin, makeName, modelName, year, price, mileage, dealRating, and dealerName. Export data, run via API, schedule and monitor runs, or integrate with other tools.

- **URL**: https://apify.com/e-commerce/autotrader-zipcode-scraper.md
- **Developed by:** [E Commerce](https://apify.com/e-commerce) (Apify)
- **Categories:** E-commerce
- **Stats:** 1 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $1.10 / 1,000 car details

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

**Powered by [E-commerce Scraping Tool](https://apify.com/apify/e-commerce-scraping-tool).** Need data from other stores too? The E-commerce Scraping Tool gets you data from AutoTrader, Amazon, eBay, and any other e-commerce site.

## AutoTrader Zipcode Search Scraper: used and new car listings by ZIP

> Scrape used, new, and certified car listings from AutoTrader.com by ZIP code, radius, make, and condition - VIN, make, model, year, price, mileage, deal rating, dealer, and photos - with no AutoTrader API required.

### What does AutoTrader Zipcode Search Scraper do?

AutoTrader Zipcode Search Scraper collects car listings from AutoTrader.com around any US ZIP code. Give it one or more ZIPs, a search radius, and optional make and condition filters, and it returns one structured record per vehicle: VIN, make, model, year, trim, price, mileage, deal rating, vehicle-history flags, dealer, and photos. It is built for local-market inventory research at scale. No AutoTrader API or login required.

- 📍 **ZIP and radius search** - scan inventory around any US ZIP, from 10 to 500 miles
- 🚗 **Full listing detail** - VIN, make, model, year, trim, mileage, and price
- 🏷️ **Deal and history signals** - deal rating, accident, one-owner, and clean-title flags
- 🏢 **Dealer and photos** - dealer name, days on site, and all listing images
- 📊 **Clean output** - structured records ready for JSON, CSV, or Excel

### What data can you extract from AutoTrader?

| Vehicle | Pricing and history | Dealer and media |
|---|---|---|
| VIN and listing ID | Price and price label | Dealer name |
| Make, model, year, trim | Deal rating | Days on site |
| Body, mileage, transmission | Accidents reported | Main photo and photo count |
| Engine, drivetrain, fuel type | One-owner flag | All photo URLs |
| Exterior and interior color | Clean-title flag | Detail URL |

### Can I search AutoTrader by ZIP, make, and condition?

Yes. Provide a list of ZIP codes and a radius, and optionally filter by AutoTrader make codes (for example TOYOTA, FORD, BMW) and by condition (used, new, or certified pre-owned). Leave the filters empty to scrape every matching listing around each ZIP.

### How does AutoTrader Zipcode Search Scraper work?

1. Enter one or more US ZIP codes and a search radius
2. (Optional) Filter by make codes and listing condition
3. The Actor pages through AutoTrader search results around each ZIP
4. Results stream to a dataset you can preview or export as JSON, CSV, or Excel

### How to use AutoTrader Zipcode Search Scraper

1. Create a free [Apify account](https://console.apify.com/sign-up)
2. Enter ZIP codes and a search radius
3. (Optional) Add make codes and a condition filter
4. Click **Start**
5. Download your data from the **Dataset** tab

#### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `zips` | array | required | US ZIP codes to search from. |
| `makeCodes` | array | none | AutoTrader make codes to filter by (for example TOYOTA, FORD). Empty for all. |
| `radius` | integer | `50` | Search radius in miles around each ZIP (10 to 500). |
| `listingType` | array | none | Filter by condition: USED, NEW, or CERTIFIED. Empty for all. |
| `maxRequestsPerCrawl` | integer | none | Optional cap on search pages for test runs. |

```json
{
  "zips": ["90210", "10001"],
  "radius": 50,
  "listingType": ["USED"],
  "makeCodes": ["TOYOTA"]
}
```

### What does the output look like?

Each listing is one structured record:

```json
{
  "listingId": "737209430",
  "vin": "4T1BF1FK5HU380000",
  "listingTitle": "2017 Toyota Camry SE",
  "makeName": "Toyota",
  "modelName": "Camry",
  "year": 2017,
  "trimName": "SE",
  "listingType": "USED",
  "mileage": 68450,
  "price": 17998,
  "priceLabel": "$17,998",
  "dealRating": "GREAT_PRICE",
  "accidentsReported": false,
  "oneOwner": true,
  "cleanTitle": true,
  "dealerName": "Example Toyota",
  "daysOnSite": 12,
  "mainPictureUrl": "https://images.autotrader.com/.../1.jpg",
  "detailUrl": "https://www.autotrader.com/cars-for-sale/vehicle/737209430",
  "searchZip": "90210"
}
```

### Why use AutoTrader Zipcode Search Scraper?

| Feature | Manual or copy-paste | AutoTrader Zipcode Search Scraper |
|---|---|---|
| Input | Search one ZIP at a time | Many ZIPs and a radius per run |
| Volume | A few listings by hand | Every matching listing per ZIP |
| History signals | Open each listing | Accident, one-owner, and clean-title flags |
| Deal context | Read by eye | Deal rating on every record |
| Export | None | JSON, CSV, Excel |

### What can you do with AutoTrader data?

- **Local market pricing** - dealers and analysts track prices, deal ratings, and days on site by ZIP to price inventory competitively
- **Inventory and supply research** - measure how many vehicles of a make or model sit within a radius
- **Vehicle-history screening** - use the accident, one-owner, and clean-title flags to filter cleaner inventory
- **Dealer analysis** - map which dealers hold the most inventory in a market

For ongoing monitoring, schedule the Actor daily for fast-moving markets or weekly for stable ones.

### How much does AutoTrader Zipcode Search Scraper cost?

AutoTrader Zipcode Search Scraper uses Apify's pay-per-event pricing: a small run-start fee plus a per-result fee for each listing scraped. Apify gives you $5 in free usage credits every month on the [free plan](https://apify.com/pricing), so light runs cost nothing. See the Actor's **Pricing** tab for the current rate on each plan.

### How do I run AutoTrader Zipcode Search Scraper via the Apify API?

```bash
curl -X POST "https://api.apify.com/v2/acts/e-commerce~autotrader-zipcode-scraper/runs?token=YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "zips": ["90210", "10001"],
    "radius": 50,
    "listingType": ["USED"]
  }'
```

### What can I integrate AutoTrader Zipcode Search Scraper with?

The Actor runs on the Apify platform, so its data flows into the tools your team already uses:

- **Google Sheets and Excel** - build a local-market inventory and pricing sheet
- **Make, Zapier, and n8n** - trigger a workflow when new listings appear
- **Slack** - get pinged when a target vehicle lands in your area
- **LangChain and MCP** - feed listing data into AI agents and apps
- **Apify API and webhooks** - load listings into your own data warehouse

### Troubleshooting

- **No results in the dataset** - Check the ZIP codes are valid US ZIPs and widen the `radius`; a narrow radius in a rural area can return few or no listings.
- **Fewer listings than expected** - Remove the `makeCodes` or `listingType` filters, or raise `maxRequestsPerCrawl` if you set it for a test run.
- **Slow or blocked runs** - AutoTrader limits heavy traffic and changes its page layout over time. Keep Apify Proxy enabled and open an issue on the **Issues** tab if fields stop returning.

### FAQ

#### Can I search several ZIP codes in one run?

Yes. Pass a list of ZIP codes in `zips` and the Actor scans each one within your chosen radius, tagging every listing with its `searchZip`.

#### Can I filter by make and condition?

Yes. Use `makeCodes` to limit to specific makes and `listingType` to limit to used, new, or certified pre-owned. Leave them empty for everything.

#### Does it include vehicle history?

The Actor returns the history preview AutoTrader shows in search results: `accidentsReported`, `oneOwner`, and `cleanTitle` flags. It does not pull full third-party history reports.

#### Can I run AutoTrader Zipcode Search Scraper with the Apify API?

Yes. Start and schedule runs over the Apify REST API and collect results with the `apify-client` packages for Node.js and Python.

#### Does it work with MCP and AI agents?

Yes. Expose the Actor through the Apify MCP server so your AI agents can pull AutoTrader inventory on demand.

#### Is it legal to scrape AutoTrader?

AutoTrader.com is a US site, and collecting publicly available listing data is generally legal. This Actor reads only public vehicle listings, not private personal data. Keep your use case lawful and read [is web scraping legal?](https://blog.apify.com/is-web-scraping-legal/) if you are unsure.

### Related Actors

- 🛒 [E-commerce Scraping Tool](https://apify.com/apify/e-commerce-scraping-tool) - get data from AutoTrader, Amazon, eBay, and any other e-commerce site
- 🚗 [CarGurus Zipcode Search Scraper](https://apify.com/e-commerce/cargurus-zipcode-search-scraper) - scrape CarGurus listings by ZIP
- 🚙 [CarMax Zipcode Search Scraper](https://apify.com/e-commerce/carmax-zipcode-search-scraper) - scrape CarMax listings by ZIP
- 🚘 [Cars.com Zipcode Search Scraper](https://apify.com/e-commerce/cars-com-zipcode-scraper) - scrape cars.com listings by ZIP

### Your feedback

Found a bug or want a field added? Open an issue on the Issues tab - we read every one.

# Actor input Schema

## `zips` (type: `array`):

US ZIP codes to search from.

## `makeCodes` (type: `array`):

Optional AutoTrader make codes to filter by (e.g. TOYOTA, FORD, HONDA, BMW). Leave empty for all makes.

## `radius` (type: `integer`):

Search radius in miles around each ZIP.

## `listingType` (type: `array`):

Filter by listing condition. Leave empty for all.

## `maxRequestsPerCrawl` (type: `integer`):

Optional cap on total requests (search pages). Leave empty to scrape every page. Useful for test runs.

## Actor input object example

```json
{
  "zips": [
    "90210",
    "10001"
  ],
  "radius": 50
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "zips": [
        "90210",
        "10001"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("e-commerce/autotrader-zipcode-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "zips": [
        "90210",
        "10001",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("e-commerce/autotrader-zipcode-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "zips": [
    "90210",
    "10001"
  ]
}' |
apify call e-commerce/autotrader-zipcode-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,e-commerce/autotrader-zipcode-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/oktPXyFWNBOKdCIOp/builds/kAJ4LNGHipzA62QWq/openapi.json
