# Pricing (/en/api/pricing)

All prices are in EUR. The prices of scrapes and matching are for 1,000 products. VAT is added when you [top up](/en/api/credits.md#top-up-the-credit) your credit, not on the job charges. The `estimate` of each job is the price that applies. The tables on this page show the current price list.

## Website setup [#website-setup]

A setup job analyzes a website, trains the scraper and extracts sample data. The price is for the analysis:

| Setup job | Price |
| --- | --- |
| The first 10 of each month | Free |
| Each next one in the month | €0.50 |

A failed analysis costs nothing. See [Add a website](/en/api/add-website.md#before-you-start).

## Free [#free]

| Item | Price |
| --- | --- |
| Product sample of a website | Free |
| First matching sample of a project | Free |

## Scrapes [#scrapes]

Full scrapes and URL scrapes have the same price. The price depends on the `difficulty` of the website:

| `difficulty` | When | Price for 1,000 products |
| --- | --- | --- |
| `EASY` | The website gives its pages without a browser. | €0.40 |
| `MEDIUM` | The scraper must use a browser to read the pages. | €0.70 |
| `HARD` | The website has strong protections, for example it needs residential proxies. | €1.20 |

The analysis sets the difficulty. The `quantity` of the estimate is:

- For a full scrape: the latest product count of the website. Before the first full scrape, the count is the estimate of the analysis.
- For a URL scrape: the number of accepted URLs.

**Example.** A full scrape of an `EASY` website with 12,345 products: 12,345 × €0.40 / 1,000 = **€4.94**. The cap is €7.41.

## Matching [#matching]

The price for 1,000 products of a matching run comes from volume bands. The bands are incremental, like tax brackets: each product has the price of the band that it falls into.

| Input products | Price for 1,000 products |
| --- | --- |
| The first 50,000 | €7 |
| From 50,000 to 250,000 | €3 |
| More than 250,000 | €2 |

`input_products` in the estimate is the number of products of all websites in the run. `unit_price_per_1000` is the average price over all bands.

**Example.** A first run with 100,000 input products: 50,000 × €7 / 1,000 + 50,000 × €3 / 1,000 = **€500.00**. The unit price is €5.00 and the cap is €750.00.

### Later runs [#later-runs]

A later run of the same websites pays only for the products that are new or changed since the last run. The minimum is 5% of the price of a first run with the same products. In the example above, the minimum of a later run is €25.00.

## From the estimate to the charge [#from-the-estimate-to-the-charge]

Each paid job has an `estimate` with these values:

| Field | Description |
| --- | --- |
| `quantity` | The estimated number of products. |
| `unit_price_per_1000` | The price for 1,000 products. |
| `total` | `quantity` × `unit_price_per_1000` / 1,000, but not less than `min_charge`. |
| `cap` | 1.5 × `total`. The charge is never more than this value. |
| `min_charge` | The minimum charge of a job: €0.10. For a later matching run, 5% of the price of a first run, if that is more. |
| `difficulty` | Scrapes only: `EASY`, `MEDIUM` or `HARD`. |
| `input_products` | Matching only: the products of all websites in the run. |

The charge uses the actual number of products, at the `unit_price_per_1000` of the approved estimate:

```txt
charge = max(products × unit_price_per_1000 / 1000, min_charge), not more than cap
```

- For a scrape, `products` is the number of products that the scrape collected.
- For a matching, `products` is the number of new and changed products in the run.

If `products` is 0, the charge is 0. A scrape without products fails. A matching without new or changed products completes at €0.00.

The API rounds each amount to whole cents, with half up. The `settlement` of the job shows the final values. If the cap limited the charge, `capped` is `true`.

## Price changes [#price-changes]

The approval calculates the estimate again with the newest data. If the price goes up, the approval stops with `409 ESTIMATE_CHANGED` and gives you the new estimate. If it goes down, you pay the lower price. A job keeps the prices of its approved estimate until its settlement.
