# Mobile.bg Scraper - Bulgarian Car Marketplace (`studio-amba/mobile-bg-scraper`) Actor

Scrape car listings from Mobile.bg, Bulgaria's largest vehicle marketplace with 3M+ monthly visits. Extract prices, specs, mileage, fuel type, transmission, power, seller info, and images. Filter by make, model, year, price range. No login required.

- **URL**: https://apify.com/studio-amba/mobile-bg-scraper.md
- **Developed by:** [Studio Amba](https://apify.com/studio-amba) (community)
- **Categories:** E-commerce
- **Stats:** 1 total users, 1 monthly users, 49.2% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 result scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

### What does Mobile.bg Scraper do?

**Mobile.bg Scraper** extracts car listing data from [Mobile.bg](https://www.mobile.bg), Bulgaria's largest online vehicle marketplace with over **3 million monthly visits** and hundreds of thousands of active listings. No login or cookies required.

Use it to collect structured used car data via the Apify platform with full **API access, scheduling, integrations**, and proxy rotation.

### Why use Mobile.bg Scraper?

- **Market research** — Analyze Bulgarian used car prices, compare by make, model, year, and mileage
- **Price monitoring** — Track price changes for specific vehicles over time with scheduled runs
- **Dealer intelligence** — Study dealer inventory, pricing strategies, and listing volumes
- **Data analytics** — Build datasets for automotive market analysis in Southeast Europe
- **Lead generation** — Find cars matching specific criteria across Bulgaria
- **Academic research** — Study depreciation curves, pricing patterns, and market trends
- **Cross-border arbitrage** — Compare Bulgarian car prices with other European markets (typically 20-40% lower than Western Europe)

### How to scrape Mobile.bg data

1. Go to this actor's page on the [Apify Store](https://apify.com/store).
2. Click **Try for free** to open it in Apify Console.
3. Configure your search: enter a make (e.g., "BMW"), model, year range, or price range.
4. Set the maximum number of results you need (default: 100).
5. Click **Start** and wait for the run to finish.
6. Download your data from the **Output** tab in JSON, CSV, Excel, or other formats.

You can also schedule regular runs, set up webhooks for real-time notifications, or integrate the results directly into your application using the [Apify API](https://docs.apify.com/api).

### Input

| Field | Type | Description |
|-------|------|-------------|
| `searchQuery` | string | Free text search (e.g., "BMW", "Audi A4", "Golf"). Defaults to "BMW" if no filters set. |
| `make` | string | Car manufacturer slug (e.g., bmw, audi, mercedes-benz, volkswagen, opel, toyota) |
| `model` | string | Car model as used in Mobile.bg URLs (e.g., 3-seriya, golf, a4) |
| `yearFrom` / `yearTo` | integer | Registration year range (e.g., 2015-2024) |
| `priceFrom` / `priceTo` | integer | Price range in EUR |
| `mileageMax` | integer | Maximum mileage in km |
| `fuelType` | string | benzin (Petrol), dizel (Diesel), gaz (LPG/CNG), elektro (Electric), hibrid (Hybrid) |
| `maxResults` | integer | Max listings to return (default: 100, max: 5000) |
| `proxyConfiguration` | object | Proxy settings — residential proxies recommended |

### Output

Each car listing includes the following fields. You can download the dataset in JSON, CSV, Excel, or connect via API.

```json
{
    "listingTitle": "BMW 320 2.0d Sport",
    "make": "BMW",
    "model": "320 2.0d Sport",
    "year": 2018,
    "price": 25000,
    "currency": "EUR",
    "mileage": 155000,
    "fuelType": "Diesel",
    "transmission": "Automatic",
    "engineSize": "2000 cc",
    "power": "190 hp",
    "location": "Sofia",
    "sellerType": "Dealer",
    "imageUrl": "https://mobistatic3.focus.bg/mobile/photosorg/...",
    "url": "https://www.mobile.bg/obiava-12345678-bmw-320-2-0d-sport",
    "scrapedAt": "2026-06-09T12:00:00.000Z"
}
```

### Data fields

| Field | Description | Example |
|-------|-------------|---------|
| `listingTitle` | Full listing title | BMW 320 2.0d Sport |
| `make` | Manufacturer | BMW, Audi, Mercedes-Benz |
| `model` | Model name | 320, Golf, A4, Clio |
| `year` | Registration year | 2018 |
| `price` | Listing price (numeric) | 25000 |
| `currency` | Price currency | EUR or BGN |
| `mileage` | Kilometers driven | 155000 |
| `fuelType` | Fuel type | Petrol, Diesel, LPG/CNG, Electric, Hybrid |
| `transmission` | Gearbox type | Manual, Automatic |
| `engineSize` | Engine displacement | 2000 cc |
| `power` | Engine power | 190 hp |
| `location` | Seller location | Sofia, Plovdiv, Varna |
| `sellerType` | Seller category | Private or Dealer |
| `imageUrl` | Main car photo URL | https://mobistatic3.focus.bg/... |
| `url` | Full listing URL | https://www.mobile.bg/obiava-... |
| `scrapedAt` | Collection timestamp | 2026-06-09T12:00:00.000Z |

### How much does it cost to scrape Mobile.bg?

Mobile.bg Scraper uses Playwright (headless browser) for reliable access:

- **50 results** cost approximately **$0.10** in Apify platform credits
- **100 results** cost approximately **$0.15**
- **500 results** cost approximately **$0.50**

The Apify Free plan includes $5 of monthly credits, which is enough for thousands of car listings.

### Tips and advanced options

- **Use make for precision** — Set the `make` field (e.g., "bmw") for targeted results instead of free text search.
- **Combine filters** — Narrow results with year range, price, and mileage filters for focused datasets.
- **Bulgarian URL slugs** — Model names use Bulgarian transliteration in URLs (e.g., "3-seriya" for 3 Series).
- **Schedule runs** — Set up daily or weekly scraping to track price changes over time.
- **Empty input works** — Running with empty input `{}` defaults to searching for "BMW" to ensure results are returned.
- **Use residential proxies** — For best reliability, use Apify residential proxies (pre-configured by default).
- **Cross-market analysis** — Combine with our AutoScout24, Polovni Automobili, or LaCentrale scrapers to compare prices across European markets.
- **Prices in EUR and BGN** — Most listings show prices in EUR, some in BGN (Bulgarian Lev). The currency field tells you which.

### Supported vehicle categories

Mobile.bg covers passenger cars and SUVs as the primary categories. The scraper focuses on the main vehicle listings which include:

- All major European and Asian car manufacturers
- Both private sellers and professional dealers
- New and used vehicles
- Prices in EUR and BGN (Bulgarian Lev, 1 EUR = ~1.96 BGN)

### About Mobile.bg

Mobile.bg is Bulgaria's dominant online vehicle marketplace, operating since 2000. It is the go-to platform for buying and selling cars in Bulgaria, with over 3 million monthly visits. The site features listings from both private sellers and professional dealers across all of Bulgaria. Prices are typically listed in EUR, with BGN conversions shown alongside.

Bulgaria is a popular destination for used car sourcing due to competitive pricing compared to Western European markets.

### FAQ and support

**Is it legal to scrape Mobile.bg?**
This scraper accesses only publicly available data that any visitor can see in their browser. It does not require login, bypass authentication, or access private data. Always review and comply with the target website's Terms of Service before use.

**Does this scraper need login or cookies?**
No. Mobile.bg Scraper works without any login credentials, cookies, or account setup. Just configure your search filters and run.

**What about anti-bot protection?**
The scraper uses Playwright (headless browser) with residential proxies to reliably access listing pages. This handles standard anti-bot measures without any extra configuration.

**Can I scrape specific makes and models?**
Yes. Use the `make` field with the manufacturer name (e.g., "bmw", "audi", "volkswagen") and optionally the `model` field for further filtering.

**What about character encoding?**
Mobile.bg uses Cyrillic text (Bulgarian language). The scraper handles encoding automatically and outputs normalized UTF-8 data with translated field values (e.g., fuel types are translated to English).

**I found a bug or need help**
Please submit an issue on the [Issues tab](https://console.apify.com/actors) and we will respond quickly. For custom scraping solutions, reach out via the same channel.

# Actor input Schema

## `searchQuery` (type: `string`):

Free text search for car listings (e.g., 'BMW', 'Audi A4', 'Golf'). Leave empty to browse all listings with other filters.

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

Car manufacturer as used on Mobile.bg (e.g., bmw, audi, mercedes-benz, volkswagen, opel, toyota, renault, peugeot, ford, honda).

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

Car model as used on Mobile.bg (e.g., 3-seriya, golf, a4, clio). Use Bulgarian transliteration as shown in URLs.

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

Minimum registration year (e.g., 2015).

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

Maximum registration year (e.g., 2024).

## `priceFrom` (type: `integer`):

Minimum price in EUR.

## `priceTo` (type: `integer`):

Maximum price in EUR.

## `mileageMax` (type: `integer`):

Maximum mileage in kilometers.

## `fuelType` (type: `string`):

Filter by fuel type.

## `maxResults` (type: `integer`):

Maximum number of car listings to return.

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

Proxy settings. Residential proxies recommended for reliable access to Mobile.bg.

## Actor input object example

```json
{
  "searchQuery": "BMW",
  "maxResults": 5,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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 = {
    "searchQuery": "BMW",
    "maxResults": 5,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("studio-amba/mobile-bg-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 = {
    "searchQuery": "BMW",
    "maxResults": 5,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("studio-amba/mobile-bg-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "searchQuery": "BMW",
  "maxResults": 5,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call studio-amba/mobile-bg-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=studio-amba/mobile-bg-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/f55f5aUrfIuCxJ4aJ/builds/erKjfcold2CWaIBRP/openapi.json
