Italy Fuel Prices by Town & Station — Cheapest (MIMIT) avatar

Italy Fuel Prices by Town & Station — Cheapest (MIMIT)

Pricing

from $33.50 / 1,000 fuel price records

Go to Apify Store
Italy Fuel Prices by Town & Station — Cheapest (MIMIT)

Italy Fuel Prices by Town & Station — Cheapest (MIMIT)

Official Italian fuel prices with each station's brand, address, town and coordinates. Search by town, province, brand, fuel or a point and radius; self-service only; fresh prices; sort cheapest or nearest. Keyless, pay per price.

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

1

Total users

1

Monthly active users

4 days ago

Last modified

Share

Italy Fuel Price Observations - MIMIT

Italy's daily fuel-price observations from MIMIT's Osservaprezzi Carburanti as clean, per-observation records - one row per station-fuel-time, with the self-service flag as a real boolean.

What you can do with it

  • Cheapest petrol in a town: {"cities": ["Roma"], "fuels": ["Benzina"], "selfServiceOnly": true, "maxPriceAgeDays": 7, "sortBy": "cheapest"} returns Rome's self-service petrol prices reported in the last week, cheapest first.
  • Stations near a point: give a latitude, longitude and radius — every price within it, nearest first, with the distance.
  • By province or brand: RM, MI, TO; Agip Eni, Q8, Esso, Pompe Bianche.
  • Located prices: every price now carries its station's brand, name, address, town, province and coordinates, joined from MIMIT's own active-station registry (same licence). The registry's operator column is never read.

What one record represents

The source is MIMIT (the Italian Ministry of Enterprises and Made in Italy), Osservaprezzi Carburanti, published as a daily open-data CSV at www.mimit.gov.it. Each record is one price observation: the station id, the fuel type, the price in euro per litre, whether it is the self-service price, and the timestamp the station reported it.

Sample output

Sample output — Italy Fuel Price Observations - MIMIT

Real rows from a live run of this actor (first 5 rows, selected columns).

One full record from the same run, exactly as delivered:

{
"station_id": "3464",
"fuel_type": "Benzina",
"price": 2.659,
"is_self_service": false,
"reported_at": "23/09/2026 20:00:22",
"record_id": "3464:Benzina:23/09/2026 20:00:22",
"source": "MIMIT - Ministero delle Imprese e del Made in Italy (Osservaprezzi Carburanti)",
"source_dataset": "prezzo_alle_8.csv",
"licence": "Italian Open Data Licence 2.0 (IODL 2.0): free to consult, extract, download, copy, distribute, transmit and adapt the data, including for commercial purposes, provided the source is acknowledged (MIMIT - Osservaprezzi Carburanti).",
"attribution": "MIMIT - Ministero delle Imprese e del Made in Italy (Osservaprezzi Carburanti)",
"caveat": "One record per fuel-price observation from the MIMIT daily open-data extract: station id, fuel type, price (EUR/litre), self-service flag and the reporting timestamp. is_self_service is a real boolean. Each price carries its station's brand, name, address, town, province and coordinates from the MIMIT active-station registry (same licence); the registry's operator (Gestore) column is never read.",
"observed_at": "2026-09-25T17:23:51Z"
}

Coverage and volume

The daily extract holds about 93,036 price observations - measured at build time from the downloaded CSV.

Sol's Wave-4 index put this door at 93,035 EXACT; measured live at build time the daily extract holds 93,036 observations - the live figure is what this listing quotes.

The Actor downloads the daily CSV, skips its one-line extraction preamble, reads the header row and delivers each data row, stopping as soon as your Maximum records cap is met.

Licence and attribution

The data is released under the Italian Open Data Licence 2.0 (IODL 2.0). The full notice travels on every record:

Italian Open Data Licence 2.0 (IODL 2.0): free to consult, extract, download, copy, distribute, transmit and adapt the data, including for commercial purposes, provided the source is acknowledged (MIMIT - Osservaprezzi Carburanti).

Person-data policy

This is a price feed and carries no personal data. Only station id, fuel type, price, the self-service flag and the timestamp are emitted; a per-record assertion rejects any operator/person field (verified with a planted-field test).

Interpretation caveat

One record per fuel-price observation from the MIMIT daily open-data extract: station id, fuel type, price (EUR/litre), self-service flag and the reporting timestamp. Prices are the stations' own reported values.

Values are reproduced verbatim from the CSV; the Actor never rewrites a field. The two MIMIT cells share the station id (idImpianto), so you can join prices to stations and back.

Provenance and compliance

Every run reads the door host's robots.txt at runtime; the gate result (URL, status, byte length, SHA-256 of the policy) is written to the run's RUN_RECEIPT, and the data path is confirmed permitted before any fetch. 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 composite 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 and delivery

Pricing is per record: you are billed only for records the Actor actually delivers, at a flat rate, with the charge raised after each record is pushed (push-then-charge), so a failed or empty run costs nothing. There is no subscription and no minimum. The Maximum records cap bounds every run, so you control the spend precisely - set it low to sample the shape of the data cheaply, then raise it once you have confirmed the cell fits your use. Because delivery is incremental and keyed on a stable id, re-running against the same door and upserting on that id keeps a downstream table current without re-paying for rows you already hold; only the new and changed records add cost. Every run's receipt reconciles delivered against charged, so the billing is auditable against the data you received.

Inputs

FieldWhat it does
citiesTown (comune) names (Roma, Milano). Accents and case don't matter.
provincesTwo-letter province codes (RM, MI, TO).
fuelsFuel names as reported (Benzina, Gasolio, GPL, Metano, Blue Diesel); a name also matches longer ones.
brandsStation brands (Agip Eni, Q8, Pompe Bianche).
selfServiceOnlyOnly self-service prices.
maxPriceAgeDaysSkip prices not reported within this many days.
latitude / longitude / radiusKmOnly stations within the radius (default 10 km) of your point; each record gets distance_km.
sortBycheapest (by the first fuel you chose), nearest (needs a point) or source (as published).
maxRecordsMost records delivered and billed in one run.

Default changed on 30 Sep 2026: if you leave maxRecords out, a run now returns up to 10 records (it was 500). Set maxRecords yourself to get more — the maximum is unchanged.

Each record is one price observation, as before. A search with no matching prices costs nothing. Coordinates are as the ministry publishes them; a handful of stations carry wrong ones (e.g. a Modena-province station placed in central Milan), so a radius search can include a stray result.

Output

Records land in the Actor's default dataset and export as JSON, CSV, Excel or via the Apify API. A tabular overview surfaces the leading fields.

Fields in detail

The record carries station_id, fuel_type, price, the boolean is_self_service and reported_at, keyed on station-fuel-time, plus the station's brand, station_type, station_name, address, municipality, province, latitude, longitude and, for a radius search, distance_km. The provenance block closes every record.

Typical uses

Fuel-price monitoring teams use this cell to track pump prices across Italy - one row per station-fuel-time, ready to chart price movements or compare self-service against served prices. Each price already carries its station's location and brand; a scheduled daily run keeps it current, and each record's observed_at stamp dates the snapshot.

Prices with their stations

MIMIT publishes prices and the station roster as two separate daily extracts. This actor reads both and joins them on the station id, so each price row already carries its station's brand, name, address, town, province and coordinates — no second actor or join needed. The station registry's operator (Gestore) column, often a person's name, is never read.

Scaling and limits

Set Maximum records low to sample or high to pull the full extract. The Actor streams the CSV and delivers incrementally, so memory stays flat and you are billed only for what is delivered. Both extracts refresh daily, so a scheduled run keeps a downstream table current; each record's observed_at stamp dates the snapshot.

How the daily extract works

MIMIT republishes the price extract every day as a single CSV, with a one-line "Estrazione del

Prices, fuels and the self-service flag

price is the pump price in euro per litre, exactly as the station reported it - the Actor does not round or convert. fuel_type is the ministry's own description (Benzina, Gasolio, GPL, Metano and so on), so a group-by on it gives the price distribution per fuel. is_self_service separates the self-service price from the served price, which for the same station and fuel can differ; keeping it as a real boolean lets you compare the two directly. Because the observation carries its own timestamp and the station id, the record joins to the station registry for location and brand and stacks cleanly into a time series.

Building a price history

A single run captures one day's snapshot. To build a history, schedule a daily run and append - each record's observed_at and the source reported_at date the observation, and the station-fuel key lets you follow a single pump over time. Because the price feed is lean (no station attributes repeated on each row), even a multi-month history stays compact, and the join to the station registry adds name, brand and coordinates only where you need them.

Sibling Actors

It sits beside the fuel-station registry cell (same MIMIT index, the station dimension table); the two join on the station id. It shares its CSV engineering with the fleet's other records Actors.