Second-by-second prices
All four oil symbols are polled every second. Every current plan reads the newest tick; only the legacy Lite plan reads a snapshot up to 10 minutes old.
Oil Price API — WTI & Brent
Live WTI and Brent crude oil prices for your app — spot and front-month futures, each with bid and ask, refreshed every second and returned as clean JSON from one endpoint.
Benchmark board
Four symbols cover the oil market most apps care about. Read across for the futures premium, down for the Brent–WTI spread — every figure below is one or two calls to the latest endpoint.
| USD / barrel | -SPOT | -FUT | Fut − spot |
|---|---|---|---|
| WTI | 96.48 | 97.92 | +1.44 |
| Brent | 104.70 | 106.28 | +1.58 |
| Brent − WTI | +8.22 | +8.36 |
Refreshed hourly on this page · per second through the API
Symbols
| Symbol | What it tracks | Unit | Bid / ask | Chart |
|---|---|---|---|---|
| WTIOIL-SPOT | WTI crude — continuous cash (spot) price | USD per barrel | Yes | Live chart → |
| WTIOIL-FUT | WTI crude — NYMEX front-month futures, continuous | USD per barrel | Yes | Live chart → |
| BRENTOIL-SPOT | Brent crude — continuous cash (spot) price | USD per barrel | Yes | Live chart → |
| BRENTOIL-FUT | Brent crude — ICE front-month futures, continuous | USD per barrel | Yes | Live chart → |
What's included
All four oil symbols are polled every second. Every current plan reads the newest tick; only the legacy Lite plan reads a snapshot up to 10 minutes old.
Every response carries the latest rate plus bid and ask, so you can show the spread or price both sides of a trade.
Use the continuous spot price for display and alerts, or the front-month NYMEX and ICE futures when you need to match exchange quotes.
Add quote=EUR, quote=INR or any supported currency and the API converts the barrel price for you — no second FX call.
Daily WTI and Brent history through the historical, time-series and fluctuation endpoints, with the same symbols and the same key.
One GET request, one x-api-key header. Works from curl, JavaScript, Python, PHP, Go or a spreadsheet — no SDK to install.
WTI
West Texas Intermediate is the US benchmark: a light, sweet crude priced for delivery at Cushing, Oklahoma. Its main futures contract trades on NYMEX in lots of 1,000 barrels and is quoted in US dollars per barrel.
Request /v3/rates/latest/WTIOIL-SPOT for a continuous WTI cash price, or /v3/rates/latest/WTIOIL-FUT for the front-month NYMEX contract on a continuous basis. Both return rate, bid and ask in USD per barrel.
Typical uses: US fuel and freight pricing, refinery and energy dashboards, and anything that has to follow the price US traders watch. For a chart and one-year history, see the live WTI price page.
Brent
Brent is the main international benchmark, used to price crude from Europe, Africa and the Middle East. The physical Dated Brent assessment draws on several North Sea grades — Brent, Forties, Oseberg, Ekofisk and Troll — and, since June 2023, US WTI Midland. ICE Brent futures trade in 1,000-barrel lots in US dollars per barrel.
Request /v3/rates/latest/BRENTOIL-SPOT for a continuous Brent cash price, or /v3/rates/latest/BRENTOIL-FUT for the ICE front-month contract on a continuous basis.
Brent usually trades a few dollars above WTI, and that gap moves with shipping costs, US export flows and supply news. To watch it directly, use the WTI to Brent ratio tool or request both symbols and compare.
Spot vs futures
Spot (-SPOT) is a continuous cash price. It has no expiry date, so it moves smoothly and never jumps when a contract changes. Use it for price displays, unit conversions, alerts and long-running charts.
Futures (-FUT) follows the front-month exchange contract — NYMEX for WTI, ICE for Brent — on a continuous basis. Use it when your numbers need to line up with futures quotes, hedging reports or trading screens.
The two are usually close, and the gap between them reflects time to delivery. Pick one per series and don't mix them in the same chart. Both are derived market prices: neither is an exchange settlement nor an official benchmark assessment such as Dated Brent.
History
The latest-rate endpoint answers “what is oil trading at right now”. For anything older, use the same symbols on the history endpoints — daily data goes back to 1990:
Use cases
Index fuel surcharges, delivery fees or bunker estimates to WTI or Brent, and update them automatically instead of by hand.
Show live WTI and Brent with bid/ask and the spread between them, next to gold, natural gas and the rest of the catalogue.
Trigger an email, webhook or Slack message when Brent crosses a level, using the per-second feed on paid plans.
Feed oil prices into cost models, invoices and forecasts — or let Claude, Cursor and other assistants query them through our MCP server.
API reference
Returns the latest price for one oil symbol — WTI or Brent, spot or front-month futures — with bid and ask, in USD per barrel unless you ask for another currency.
Endpoint
quote is ignored. On the legacy Lite plan rates are in USD and may be up to 10 minutes old.Authentication
x-api-keyheader · stringrequiredPath parameter
symbolstringrequiredWTIOIL-SPOT, WTIOIL-FUT, BRENTOIL-SPOT and BRENTOIL-FUT. The same endpoint also serves XAU, XAG, XPT, XPD, XCU-SPOT and XCU-FUT; every other commodity is on /rates/latest.Query parameters
quotestringoptionalStandard & aboveEUR or INR. Defaults to the symbol's native currency (USD). Supported currencies.metadatabooleanoptionalmetadata object (unit and quote currency). Defaults to true; pass false for a smaller payload.Response fields
successbooleantrue on a 200 response.timestampnumberrates.WTIOIL-SPOTobjectrate (latest price), bid and ask, in USD per barrel.metadata.WTIOIL-SPOTobjectunit (Bbl) and quote currency of the returned rate.Status codes
| 200 | — | Rate returned. |
| 400 | VALIDATION_ERROR | Symbol not served by this endpoint, or include value not valid for the symbol. |
| 401 | UNAUTHORIZED | Missing or invalid x-api-key. |
| 403 | LIMIT_REACHED | Monthly request quota used up. |
| 404 | SYMBOL_NOT_FOUND / QUOTE | Unknown symbol (with suggestions) or unsupported quote currency. |
| 429 | TOO_MANY_REQUESTS | Per-minute rate limit hit (legacy Lite plan). |
Full list in the error reference. History lives on /rates/historical and /rates/time-series.
Example
$ curl https://api.commoditypriceapi.com/v3/rates/latest/WTIOIL-SPOT \
-H "x-api-key: YOUR_API_KEY" \
-G -d "quote=USD"Sample values. Run the playground above for a live response.
Four symbols: WTIOIL-SPOT and WTIOIL-FUT for West Texas Intermediate, and BRENTOIL-SPOT and BRENTOIL-FUT for Brent. The -SPOT symbols are continuous cash prices; the -FUT symbols follow the front-month NYMEX (WTI) and ICE (Brent) futures contracts on a continuous basis. All four are quoted in US dollars per barrel.
All four oil symbols are polled every second. On every current plan, from Basic to Enterprise, each request returns the newest price; only on the legacy Lite plan can the price be up to 10 minutes old.
Every plan includes the oil endpoint, and you can start with an unlimited free trial for integrations on the Basic plan — no credit card required. Basic returns prices in USD; conversion to other currencies starts on the Standard plan.
WTIOIL-SPOT is a continuous cash price with no expiry, so it moves smoothly. WTIOIL-FUT tracks the front-month NYMEX WTI futures contract on a continuous basis. They are usually close; the difference reflects time to delivery. The same applies to BRENTOIL-SPOT and BRENTOIL-FUT on ICE.
No. The API returns derived market prices with bid and ask. They are not exchange settlement prices and not an official benchmark assessment such as Dated Brent. A futures symbol tracks the pricing of the exchange contract but is not a direct feed from NYMEX or ICE.
Yes. Add the quote parameter, for example quote=EUR, on the Standard plan or above and the API converts the price per barrel into that currency. More than 150 currencies are supported.
Daily history for WTI and Brent goes back to 1990 through the historical, time-series and fluctuation endpoints.
Yes. It is a plain REST API that returns JSON: send a GET request with your key in the x-api-key header. The documentation has ready-made cURL, JavaScript, Python and PHP examples.
Keep exploring
Get started
Start with an unlimited free trial for integrations on the Basic plan — no credit card. Upgrade when you need other currencies and the time-series, fluctuation and intraday endpoints.