France Fuel Station Prices - roulez-eco, Per Price avatar

France Fuel Station Prices - roulez-eco, Per Price

Pricing

from $33.50 / 1,000 fuel price records

Go to Apify Store
France Fuel Station Prices - roulez-eco, Per Price

France Fuel Station Prices - roulez-eco, Per Price

France fuel prices (roulez-eco) as clean per-record data - one row per station and fuel, with coordinates, price in EUR/litre and update time. 9,802 stations, ~32,500 prices. Licence Ouverte 2.0. $0.05 per record.

Pricing

from $33.50 / 1,000 fuel price records

Rating

0.0

(0)

Developer

NexGen Signal

NexGen Signal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

France's fuel prices from the official roulez-eco instantaneous feed as clean, per-price records - one row per station and fuel, with the price in euros per litre and the update timestamp, plus the station's location.

What one record represents

The source is the roulez-eco instantaneous open-data feed (donnees.roulez-eco.fr), the French government fuel-price service. The Actor downloads the feed's ZIP, reads its XML, and emits one record per station x fuel: the station id, coordinates, postcode, city, address and location type (road or motorway), then the fuel name, the price in euros per litre, and the timestamp the price was last updated.

Coverage and volume

The feed carries 9,802 stations and about 32,500 individual fuel prices at fetch time - a live snapshot that updates continuously.

Sol's Wave-4 index put this door at 32,568 prices; measured live at build time the feed carries about 32,500 prices across 9,802 stations - the count moves with the live feed, and the live figures are what this listing quotes.

Licence and attribution

The data is published under the Licence Ouverte 2.0 (Etalab). The full notice travels on every record:

Prix des carburants (roulez-eco / data.gouv.fr), Licence Ouverte 2.0 (Etalab): free to reproduce, redistribute and adapt, including commercially, provided the source and date are acknowledged.

Person-data policy

Stations are business premises - the feed carries station id, brand-free location and prices, with no operator or owner person field. A per-record assertion rejects any operator/person field as a matter of form. No natural-person data is processed.

Interpretation caveat

One record per station x fuel price from the roulez-eco instantaneous feed (9,802 stations, ~32,500 prices): station id, coordinates, postcode, city, address, fuel name, price (EUR/litre) and update timestamp. Stations are business premises; the feed carries no operator-person field.

Values are reproduced verbatim from the feed; the Actor never rewrites a field, except that the source's integer coordinates are converted to standard decimal degrees (dividing by 100,000) so latitude/longitude are usable directly. The price is the station's own reported value in euros per litre.

Provenance and compliance

Every run reads the door host's robots.txt at runtime; the gate result (URL, status, byte length and, where a policy is served, its SHA-256) is written to the run's RUN_RECEIPT. Where the host serves no applicable robots rule, the gate records that (flagged) and proceeds on the licence, which grants re-use. The endpoint is keyless. The Actor never bypasses a block or fetches through a mirror.

Data quality and freshness

Boolean columns are delivered as real booleans and numeric columns as real numbers. Delivery is keyed on a stable id, so the dataset is safe to diff, deduplicate or upsert. Every run re-reads the live door, so the data is as fresh as the source publishes, and each record's observed_at stamp dates the snapshot. The run's RUN_RECEIPT records the source URL and how many records were delivered and charged, and confirms charge_equals_delivered.

Billing, delivery and joins

Pricing is per record: you are billed only for records the Actor actually delivers, with the charge raised after each record is pushed (push-then-charge), so a failed or empty run costs nothing. The Maximum records cap bounds every run, so you control spend precisely - sample cheaply, then raise it. Every record is a flat, typed object keyed on a stable id, so the data loads without a cleaning pass, diffs cleanly between runs, and upserts into a table you maintain over time; re-running keeps that table current without re-paying for rows you already hold, and each receipt reconciles delivered against charged. Because the source's own identifiers are preserved verbatim, the dataset joins cleanly onto other sources keyed on the same identifier.

Scaling and scheduling

Set Maximum records low to sample the shape of the data cheaply, then raise it once the cell fits your use. The Actor delivers incrementally and streams its source, so memory stays flat regardless of how many records you request, and you are billed only for what is delivered. Because the source republishes on its own cadence, a scheduled run keeps a downstream table current: new and changed records upsert over the old ones on the stable key, and the observed_at stamp on every record tells you when each was last seen live. There is no subscription and no minimum - the per-record price and the record cap together mean the spend on any run is known in advance and matched exactly to the data you receive.

Inputs

  • Maximum records (maxRecords) - hard cap on price records delivered and billed.

Output

Records land in the Actor's default dataset and export as JSON, CSV, Excel or via the Apify API. A tabular overview surfaces station, city, postcode, fuel name, price and update time.

Fields in detail

The record leads with station_id, latitude, longitude, postcode, road_type, address, city, then fuel_name, fuel_id, price_eur and price_updated. The provenance block closes every record.

Typical uses

Fuel-price monitoring teams use this cell to track pump prices across France - one row per station and fuel, with coordinates - ready to map, to compare by region or brand, or to feed a price-comparison model. Because the price is a real number and coordinates are decimal degrees, a filter surfaces the cheapest diesel in a department without cleaning, and the station id lets you follow a pump over time by stacking runs. It is one of four fuel-price cells in this fleet.

A live snapshot

The roulez-eco feed is instantaneous - it carries the latest price each station has reported, updated continuously - so a run is a live snapshot rather than a history. To build a price history, schedule runs and append: each record carries the source's own price_updated timestamp and the run's observed_at, and the station-plus-fuel key lets you follow a single pump over time. Because the feed is one compact ZIP, a run is cheap, and a scheduled run keeps a downstream price table current.

The four-country fuel family

This cell is one of four fuel-price cells in the fleet, one per country: France here, Spain in the companion MINCOTUR cell, and Italy in the two MIMIT cells (a price-observation feed and a station registry). Each draws its own national open-data source at that country's own grain, so the four do not overlap; together they give a cross-border view of European pump prices. Where the Italian feed splits prices and stations into two cells, the French feed carries both in one row per station-and-fuel, which is why this cell keeps the station's location on every price row - a single join is not needed to map a French price. Run the four and align them on your own schema for a multi-country comparison; because each keeps its source's own station identifiers and fuel names verbatim, aligning them is a mapping exercise you control - no country's naming is imposed on another - and the result is a genuine like-for-like European pump-price panel rather than a lossy merge, refreshed as fast as you schedule each national run.

Sibling Actors

It sits beside the Spain fuel-station-price cell and the two Italy fuel cells (station registry and price observations) - a four-country fuel-price family. It shares its zip/XML engineering with the fleet's other records Actors.