# Carwale Used Cars Scraper: India Listings (`getascraper/carwale-used-cars-scraper`) Actor

Extract used-car listings from Carwale.com with real price, year, and mileage filters, make/model, city, seller, and photo galleries. JSON or CSV rows ready for Sheets, Make, and Zapier. From $0.0009 per listing.

- **URL**: https://apify.com/getascraper/carwale-used-cars-scraper.md
- **Developed by:** [GetAScraper](https://apify.com/getascraper) (community)
- **Categories:** E-commerce, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.66 / 1,000 car listings

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/platform/actors/running/actors-in-store#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

## 🚗 Carwale Used Cars Scraper: India Listings

<table width="100%">
<tr>
<td style="padding:24px 28px;background:#FFF7ED;border:1px solid #FCD9B4;border-top:4px solid #EA580C;border-radius:12px">
<span style="font-size:23px;font-weight:800;color:#1C1917;line-height:1.3">A second, independent read on India's used-car market.</span><br>
<span style="font-size:15px;color:#57534E;line-height:1.6">Scrape public Carwale.com used-car listings with real price, mileage, and year filters, and export prices, specs, dealer info, and photo galleries to Sheets, Excel, or n8n.</span>
</td>
</tr>
</table>

<table width="100%">
<tr>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #FCD9B4;border-radius:10px 0 0 10px;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#EA580C">🎯 Real filters</span><br>
<span style="font-size:12px;color:#57534E">Price, mileage, and year, matched to Carwale's own real slider filters.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #FCD9B4;border-left:none;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#EA580C">🏙️ City & make aware</span><br>
<span style="font-size:12px;color:#57534E">Search any Indian city, and narrow to a specific make or model.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #FCD9B4;border-left:none;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#EA580C">🪪 Dealer context</span><br>
<span style="font-size:12px;color:#57534E">Seller name, dealer ID, trusted-seller flag, and ownership count.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #FCD9B4;border-left:none;border-radius:0 10px 10px 0;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#EA580C">🖼️ Full galleries</span><br>
<span style="font-size:12px;color:#57534E">Every public listing photo, not just the cover image.</span>
</td>
</tr>
</table>

Most Carwale scrapers hand you a keyword box and hope. This Actor exposes the same price, mileage, and year filters you'd use on the site itself, so what you scrape is already the inventory you actually want.

### 🔍 What does Carwale Used Cars Scraper do?

Carwale Used Cars Scraper turns public car listings from [Carwale.com](https://www.carwale.com/used/), one of India's largest used-car marketplaces, into structured data: price, year, mileage, fuel type, transmission, seller details, and full photo galleries.

Pick a city, optionally a make and model, and a price/mileage/year range, or paste a Carwale.com search link built on the site itself. Run it once for a quick export, or schedule it on Apify to track inventory changes over time. The Actor returns only data present on the public listing.

### 💡 Why use it?

- **Dealers and sourcing teams** can pull inventory under a price and mileage ceiling across multiple Indian cities without checking listings one by one.
- **Market researchers** can track price, year, and mileage across comparable vehicles for pricing analysis.
- **Buyers and resellers** can monitor a filtered slice of the market on a schedule and catch new listings as they post.
- **Data teams already using CarDekho data** can add Carwale as a second, independent India source for cross-checking prices and coverage, since the two sites carry distinct listings and dealer networks rather than duplicating each other.

### 🧭 How to use it

<table width="100%">
<tr>
<td style="padding:16px 14px;width:33%;background:#FFF7ED;border:1px solid #FCD9B4;border-radius:10px 0 0 10px;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#EA580C;letter-spacing:1px">STEP 1</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Set your filters</span><br>
<span style="font-size:12px;color:#57534E">City, make/model, price, mileage, and year.</span>
</td>
<td style="padding:16px 14px;width:33%;background:#FFF7ED;border:1px solid #FCD9B4;border-left:none;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#EA580C;letter-spacing:1px">STEP 2</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Run the Actor</span><br>
<span style="font-size:12px;color:#57534E">Set how many listings and pages to collect.</span>
</td>
<td style="padding:16px 14px;width:33%;background:#FFF7ED;border:1px solid #FCD9B4;border-left:none;border-radius:0 10px 10px 0;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#EA580C;letter-spacing:1px">STEP 3</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Export results</span><br>
<span style="font-size:12px;color:#57534E">Download your dataset in JSON, CSV, Excel, or HTML.</span>
</td>
</tr>
</table>

### 🧾 Input

| Field | Type | Required | Description |
|---|---|---|---|
| `startUrls` | array of URLs | No | Paste public Carwale.com used-car search links, built however you like on the site. Overrides City, Make/Model, and the filters below. |
| `city` | string | No | Indian city slug, e.g. `mumbai`, `delhi`, `bangalore`. Default `mumbai`. |
| `make` | string | No | Car brand, e.g. `Maruti Suzuki`, `Hyundai`, `BMW`. |
| `model` | string | No | Car model, e.g. `Swift`, `Creta`. Used together with Make. |
| `priceFromLakh` / `priceToLakh` | integer | No | Minimum and maximum asking price, in Lakh (1 Lakh = Rs. 100,000). |
| `yearFrom` / `yearTo` | integer | No | Earliest and latest model year. |
| `mileageFromKm` / `mileageToKm` | integer | No | Minimum and maximum odometer reading, in kilometers. |
| `maxItems` | integer | No | Maximum listings saved to the dataset. Default `25`. |
| `maxPages` | integer | No | Maximum search result pages read. Default `5`. |
| `proxyConfiguration` | object | No | Optional proxy settings. Not required for normal use. |

### 📦 Output

Every record includes the listing link, price, year, mileage, fuel type, transmission, seller details, and the full public photo gallery.

```json
{
  "listing_url": "https://www.carwale.com/used/mumbai/toyota-corolla-altis/znsc2vnq/",
  "profile_id": "D7081164",
  "title": "Toyota Corolla Altis VL CVT Petrol",
  "make": "Toyota",
  "model": "Corolla Altis",
  "version": "VL CVT Petrol",
  "price": 1075000,
  "price_formatted": "10.75 Lakh",
  "currency": "INR",
  "year": 2019,
  "mileage_km": 46817,
  "fuel_type": "Petrol",
  "transmission": "Automatic (CVT)",
  "seller_type": "Dealer",
  "seller_name": "Star Auto India",
  "city": "Mumbai",
  "area": "Andheri (E)",
  "is_trusted": false,
  "owners": 1,
  "scraped_at": "2026-08-20T07:57:42.771Z"
}
```

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

### 📊 Data table

| Field | Type | Description |
|---|---|---|
| `listing_url`, `profile_id`, `stock_id` | string | Public listing link and its source identifiers. |
| `title`, `make`, `model`, `version`, `trim` | string | Listing headline and vehicle breakdown. |
| `price`, `price_formatted`, `currency` | number, string | Asking price as a real number in Rupees, the source's own formatted text (e.g. "10.75 Lakh"), and currency. |
| `year`, `mileage_km` | number | Model year and odometer reading in kilometers. |
| `fuel_type`, `transmission` | string | Vehicle specification fields, when published. |
| `seller_type`, `seller_name`, `dealer_id` | string, string, number | Whether the seller is a dealer, their name, and dealer ID when applicable. |
| `city`, `area` | string | Listing location. |
| `image_urls` | array | The full public photo gallery. |
| `is_trusted`, `warranty_type`, `owners` | boolean, number, number | Trusted-seller flag, warranty coverage code, and prior owner count, when published. |
| `source_url` | string | The search URL that produced this listing. |
| `scraped_at` | string | Timestamp of when this record was built. |

Any field the source listing does not publish is left out of that record entirely, so you never see placeholder or made-up values. The `price` field is always the real numeric asking price; the source's formatted "X Lakh" text is kept separately in `price_formatted` for reference, never used as the numeric value.

### 💰 Pricing

This Actor runs on Apify's pay-per-event pricing. You only pay for listings actually returned, and an empty or failed run costs nothing beyond a few seconds of compute. There is no subscription.

### ⭐ Enjoying Carwale Used Cars Scraper?

<table width="100%">
<tr>
<td style="padding:20px 24px 14px;background:#FFF7ED;border:1px solid #FCD9B4;border-left:5px solid #EA580C;border-radius:10px 10px 0 0">
<span style="font-size:20px;letter-spacing:4px">⭐ ⭐ ⭐ ⭐ ⭐</span><br>
<span style="font-size:17px;font-weight:800;color:#1C1917">This Actor just saved you from checking Carwale listings one at a time.</span><br>
<span style="font-size:14px;color:#57534E">A 5-star rating takes 10 seconds and helps other dealers, researchers, and buyers find it. Your feedback also tells us what to build next.</span>
</td>
</tr>
<tr>
<td style="padding:0;background:#EA580C;border:1px solid #FCD9B4;border-top:none;border-radius:0 0 10px 10px;text-align:center">
<a href="https://apify.com/getascraper/carwale-used-cars-scraper/reviews" style="display:block;padding:13px 16px;color:#FFFFFF;text-decoration:none;font-weight:800;font-size:15px;letter-spacing:0.3px">★&nbsp;&nbsp;Rate this Actor on Apify</a>
</td>
</tr>
</table>

### 🛠️ Tips and advanced options

- Set both `priceFromLakh` and `priceToLakh` together to cut down on irrelevant results fast.
- `city` accepts any Indian city Carwale covers, not just Mumbai. Use the slug as it appears in a Carwale URL, e.g. `pune`, `hyderabad`, `ahmedabad`.
- For a make you don't see modeled cleanly, paste that search directly from Carwale.com into `startUrls`; the Actor follows any valid Carwale used-car search link.
- Carwale's own price filter is in Lakh (1 Lakh = Rs. 100,000) and its year filter works in car age rather than calendar year; this Actor converts both for you so you can just enter a normal price range and calendar year range.

### ❓ FAQ

**Why is `price` a plain number instead of the "X Lakh" text I see on the site?**
Carwale's own display price is a formatted string like "17 Lakh", which isn't something you can sort, filter, or chart directly. This Actor converts it to a real number in Rupees for the `price` field, and keeps the original formatted text separately in `price_formatted` for reference.

**Can I filter by a specific make or model?**
Yes, with the `make` and `model` input fields, or by pasting a make/model search link from Carwale.com into `startUrls` for anything not covered cleanly by those fields.

**Why is a field missing from an item?**
Carwale listings don't publish every detail on every listing. Missing values are omitted rather than replaced with guesses.

**Is this affiliated with Carwale?**
No. This is an independent tool that collects publicly available listing information. Use it in line with applicable rules and the source website's terms.

Found a bug or want a feature added? Open an issue on the Actor's Issues tab, or reach out for a custom version of this Actor.

### 🔗 Other actors

- [CarDekho Used Cars Scraper: Indian Car Listings, Prices & Dealer Data](https://apify.com/getascraper/cardekho-used-cars-scraper) ↗ - A second, independent India used-car source with its own listings and dealer network, useful for cross-checking coverage and pricing alongside this Actor.
- [Standvirtual Cars Scraper: Carros usados](https://apify.com/getascraper/standvirtual-cars-scraper) ↗ - Used-car listings from Portugal's largest car marketplace.
- [OtoMoto Cars Scraper: Samochody używane](https://apify.com/getascraper/otomoto-cars-scraper) ↗ - Used-car inventory from Poland's largest car marketplace.
- [Marktplaats Cars Scraper: Tweedehands auto's](https://apify.com/getascraper/marktplaats-cars-scraper) ↗ - Used-car listings from the Netherlands.
- [Kleinanzeigen Autos Scraper: Dealer Data](https://apify.com/getascraper/kleinanzeigen-cars-scraper) ↗ - Dealer-ready German car inventory with native filters.

# Actor input Schema

## `startUrls` (type: `array`):

Paste one or more Carwale.com used-car search links directly, built however you like on the site itself. When set, this replaces City, Make/Model, and the filters below. Leave empty to build the search from those fields instead.

## `city` (type: `string`):

Indian city to search, as it appears in a Carwale URL, e.g. "mumbai", "delhi", "bangalore", "pune". Carwale's used-car listings are always scoped to one city. Ignored when Start URLs is set.

## `make` (type: `string`):

Car brand, e.g. "Maruti Suzuki", "Hyundai", "BMW". Matches Carwale's own make filter, applied as part of the search URL. Leave blank to search all makes.

## `model` (type: `string`):

Car model, e.g. "Swift", "Creta". Only used together with Make. Leave blank to search all models of the chosen make.

## `priceFromLakh` (type: `integer`):

Minimum asking price, in Lakh (1 Lakh = Rs. 100,000). Matches Carwale's own Budget filter.

## `priceToLakh` (type: `integer`):

Maximum asking price, in Lakh (1 Lakh = Rs. 100,000). Matches Carwale's own Budget filter.

## `yearFrom` (type: `integer`):

Earliest model year. Carwale's own filter works in car age rather than calendar year, so this is converted for you.

## `yearTo` (type: `integer`):

Latest model year.

## `mileageFromKm` (type: `integer`):

Minimum odometer reading in kilometers. Matches Carwale's own Kilometer filter.

## `mileageToKm` (type: `integer`):

Maximum odometer reading in kilometers.

## `proxyConfiguration` (type: `object`):

Optional proxy settings. Carwale works with a direct connection by default.

## `maxItems` (type: `integer`):

Maximum number of unique car listings to return.

## `maxPages` (type: `integer`):

Maximum number of search result pages to visit.

## Actor input object example

```json
{
  "startUrls": [],
  "city": "mumbai",
  "make": "",
  "model": "",
  "proxyConfiguration": {
    "useApifyProxy": false
  },
  "maxItems": 10,
  "maxPages": 2
}
```

# Actor output Schema

## `results` (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 = {
    "startUrls": [],
    "city": "mumbai",
    "make": "",
    "model": "",
    "proxyConfiguration": {
        "useApifyProxy": false
    },
    "maxItems": 10,
    "maxPages": 2
};

// Run the Actor and wait for it to finish
const run = await client.actor("getascraper/carwale-used-cars-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 = {
    "startUrls": [],
    "city": "mumbai",
    "make": "",
    "model": "",
    "proxyConfiguration": { "useApifyProxy": False },
    "maxItems": 10,
    "maxPages": 2,
}

# Run the Actor and wait for it to finish
run = client.actor("getascraper/carwale-used-cars-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 '{
  "startUrls": [],
  "city": "mumbai",
  "make": "",
  "model": "",
  "proxyConfiguration": {
    "useApifyProxy": false
  },
  "maxItems": 10,
  "maxPages": 2
}' |
apify call getascraper/carwale-used-cars-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,getascraper/carwale-used-cars-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/YuUrTaGM2fVDxwIOe/builds/Y8WZqHytuqwE7ORTi/openapi.json
