Pricing

How the API prices setup, scrapes and matching, and how the estimate becomes the charge.

All prices are in EUR. The prices of scrapes and matching are for 1,000 products. VAT is added when you top up 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

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

Setup jobPrice
The first 10 of each monthFree
Each next one in the month€0.50

A failed analysis costs nothing. See Add a website.

Free

ItemPrice
Product sample of a websiteFree
First matching sample of a projectFree

Scrapes

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

difficultyWhenPrice for 1,000 products
EASYThe website gives its pages without a browser.€0.40
MEDIUMThe scraper must use a browser to read the pages.€0.70
HARDThe 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

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 productsPrice 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

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

Each paid job has an estimate with these values:

FieldDescription
quantityThe estimated number of products.
unit_price_per_1000The price for 1,000 products.
totalquantity × unit_price_per_1000 / 1,000, but not less than min_charge.
cap1.5 × total. The charge is never more than this value.
min_chargeThe minimum charge of a job: €0.10. For a later matching run, 5% of the price of a first run, if that is more.
difficultyScrapes only: EASY, MEDIUM or HARD.
input_productsMatching 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:

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

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.

On this page