Lubricant Movement — Brazil Monthly Origin-Destination Volumes

One row is one month and reported product movement between origin and destination markets for Brazil coverage in Brazil, with measured lubricant movement and temporal coverage through 2026-05-01. The profiled table has 188,302 rows. Known limitation: Rows are not unique on their full dimension set (the source Annex A bundles overlapping current and historical vintages); de-duplicate on (ano, mes, codigo_do_produto, uf_de_origem, uf_do_destinatario) before summing volume_l.

anp-brazil-mdpg-lubrificante·10 columns·1.4 MB·Creative Commons Attribution-NoDerivatives 3.0 Unported (site footer) plus ANP portal terms·updated 1mo ago

Schema

dateDATE
yearINTEGER
monthINTEGER
codigo_do_produtoVARCHAR
descricao_do_produtoVARCHAR
regiao_de_origemVARCHAR
uf_de_origemVARCHAR
regiao_do_destinatarioVARCHAR
uf_do_destinatarioVARCHAR
volume_lDOUBLE

Get this dataset on your machine

subsets sync --bundle medium clones the mid-size tiers as queryable local tables — use --bundle large for the widest tier

pip install subsetsio
subsets sync --bundle small # or medium, or large
subsets serve # search + SQL at http://localhost:8080

Free and open — the data syncs straight from the public bucket, and search + SQL run entirely on your machine. See docs →

Query it locally

Full docs →
Bash
subsets serve   # local API on http://localhost:8080
curl -s -X POST "http://localhost:8080/query" \
  -H "Content-Type: application/json" \
  -d '{"sql": "SELECT * FROM \"anp-brazil-mdpg-lubrificante\" LIMIT 5"}'

No account, no API key — the data syncs straight from bundles.subsets.io and every query runs on your machine. See the local API reference.