One REST endpoint for all four LBMA metals. Live XAU, XAG, XPT and XPD spot prices, 36–58 years of historical daily closes, and conversion to any ISO 4217 currency — built for developers shipping accounting systems, ETF NAV calculators, jewelry storefronts, bullion dealers, mining finance teams and PGM refinery settlement pipelines. $9/mo bundles all four metals with 170+ forex currencies and 420+ cryptocurrencies on one API key.
Single $9/mo plan covers all four metals · No per-symbol upcharge · Cancel anytime
All four precious metals in USD per troy ounce, blended from LBMA fixings and market feeds. Refreshed every 15 minutes server-side.
Each metal has its own full resource page — unique use cases, a spot-vs-futures explainer flavoured for that metal, code samples, endpoint reference, sources block and FAQ. The list below is a summary; click through for the detail.
Monetary metal, central-bank reserve asset, ETF-heavy. 58 years of LBMA history covering 1971 Nixon Shock, 1980 and 2011 peaks, and the 2020–2024 macroeconomic re-pricing.
Open gold resource page →Half-monetary, half-industrial — solar panels and electronics are 55%+ of demand. 58 years of LBMA history including the 1980 Hunt brothers corner and 2011 run to $49.
Open silver resource page →Industrial PGM dominated by diesel autocatalysts and chemical use. 36 years of LBMA history from 1990, including the 2008 collapse and post-dieselgate re-rating.
Open platinum resource page →Most concentrated metal — 80% of demand is gasoline autocatalysts, 80% of supply is Russia and South Africa. 36 years of history from 1990.
Open palladium resource page →Most precious metals API vendors charge per-metal or per-tier. That makes sense if you only need gold, but it is expensive and operationally awkward the moment you want to track the gold/silver ratio, the platinum/palladium substitution signal, or the PGM basket as a whole.
Four metals, 170+ forex currencies, 420+ cryptocurrencies on a single key. One dashboard, one rate limit, one billing line.
Call /api/commodities/rates with no to parameter and all four metals come back in one round-trip.
XAU/XAG ratio, XPT/XPD ratio, and basket-value calculations are a client-side divide — not a second paid subscription.
XAU/XAG 1968+ and XPT/XPD 1990+ in the same /historical/timeseries endpoint. Same shape, same pagination, same response format.
Competitors charge extra for platinum or palladium on top of gold/silver. We don’t. $9/mo is everything.
Pass from=XAU&to=EUR and the API converts through our live forex cache. No secondary FX-conversion call, no date-mismatch bugs on historical queries.
Four endpoints cover every precious metals integration pattern: current spot price, single-date historical, time-series ranges, and symbol metadata. All require api_key either as a query param or Authorization: Bearer header, and require the Pro tier. Full OpenAPI spec lives in the Swagger console.
/api/commodities/rates
Current spot
Pro
Returns live USD-per-troy-ounce prices for gold (XAU), silver (XAG), platinum (XPT) and palladium (XPD). Pass to=XAU for a single metal, or omit it for all four. Refreshed every 15 minutes from the LBMA-blended cache.
api_key — required (Pro plan)from — base (USD by default, or any ISO 4217)to — optional target (XAU/XAG/XPT/XPD)amount — optional multiplierformat — json (default), xml, jsonpGET /api/commodities/rates
?from=USD&to=XAU
→ { "amount": 1, "base": "USD",
"to": "XAU",
"rate": 0.000413,
"result": 0.000413 }
/api/commodities/convert
Convert amount
Pro
Converts between metals and currencies in a single call — commodity-to-commodity, commodity-to-currency, or currency-to-commodity. Use this when you want a pre-calculated amount, not rate metadata.
amount — required, floatfrom, to — any of XAU/XAG/XPT/XPD or ISO 4217 codeformat — json / xml / jsonpGET /api/commodities/convert
?amount=10&from=XAU&to=USD
→ { "amount": 10, "from": "XAU",
"to": "USD", "result": 24287.50 }
/api/commodities/historical/rates
Historical (single date)
Pro
Precious metals price for any specific date. Use for accounting, tax reporting, ETF NAV backdating, or jewelry-inventory revaluation. Set to to a fiat currency (e.g. EUR) and we convert through the matching historical FX rate for that same date — which is what auditors require.
date — required, YYYY-MM-DDfrom, to, amount — same shape as /ratesGET /api/commodities/historical/rates
?date=2020-03-20&from=XAU&to=USD
→ { "date": "2020-03-20",
"rate": 1479.25, ... }
/api/commodities/historical/timeseries
Range query
Pro
Date-range queries up to 5 years per call. Ideal for drawing charts, running backtests, or bulk-loading a metal series into a data warehouse. Combine with the forex time-series endpoint to get a dated, FX-correct valuation sequence.
start_date, end_date — requiredbase — USD default, any ISO 4217symbols — comma-separated (e.g. XAU)GET /api/commodities/historical/timeseries
?start_date=2024-01-01
&end_date=2024-12-31
&symbols=XAU
Precious metals spot and historical rates are blended from institutional and market sources, weighted by reliability and recency. When a source returns an outlier tick (fat-finger, feed glitch) it is automatically excluded from the published rate.
Each scraper in the list below is a real module in our pipeline — not a marketing claim — and you can cross-reference them in the pipeline itself via app/scrapers/.
The authoritative benchmark — twice-daily auction-based fixings for gold, silver, platinum and palladium. Used by ETFs, central banks, and bullion banks worldwide to settle contracts.
Retail / wholesale bullion market data from Montreal. Cross-check source for the LBMA blend — useful during off-hours when London and New York are both closed.
Supplementary gold pricing and demand metadata from the WGC / gold.org. Used for recency verification against the LBMA fix.
Public consensus bullion quotes in multiple currencies — used to sanity-check the FX-converted rates on the metals endpoints.
Edge-cached tick feed covering all four metals — used when LBMA and Kitco are both mid-update to avoid stale prices.
Market-hours metal quotes from a regulated Swiss dealer. Third leg of the outlier-rejection check on XAU/XAG, minor contributor on XPT/XPD.
The weighted-blend algorithm decays older observations and favours the LBMA fix during its publication windows. Full source code for each scraper is in app/scrapers/ in the UniRateAPI repo.
Pricing and feature data verified against each vendor’s public pricing page in 2026. All five providers ultimately read from the LBMA fix for the authoritative reference rate — the meaningful differences are packaging, historical depth, bundled features, and price.
| Feature | UniRateAPI | GoldAPI.io | metals-api.com | MetalpriceAPI | Alpha Vantage |
|---|---|---|---|---|---|
| Entry price | $9/mo | Free tier then on request | $19.99/mo (Copper) | $8.99/mo (Basic) | $49.99/mo |
| Requests / month (entry) | 750,000 | ~100 (free tier) | 2,500 | 10,000 | 75 req/min (no daily cap) |
| Metals covered | XAU, XAG, XPT, XPD | XAU, XAG | All four + rhodium | All four | XAU, XAG |
| Historical depth | 58 yrs (XAU/XAG), 36 yrs (XPT/XPD) | Historical available | 30 days on entry, 365 on top tier | Yes (paid) | Yes (paid) |
| Forex + crypto bundled | 170+ FIAT · 420+ crypto | No | FIAT only, no crypto | FIAT + metals, no crypto | FIAT + crypto + stocks |
| Currency conversion | Any ISO 4217, server-side | USD only | Yes (limited) | Yes | USD only |
| Free tier | 6,000/mo (forex + crypto) | ~100/mo | None on entry | 100/mo | 25 req/day |
| Response formats | JSON, XML, JSONP | JSON | JSON | JSON | JSON, CSV |
| Time-series included | Yes, at $9 | Paid tier | Paid tier (Gold+) | Paid tier | Premium |
Pricing accurate as of 2026-04. Verify each vendor’s current plans before committing — metals-api.com in particular has been raising prices regularly since 2024.
Integrations that need more than one metal are almost always in one of these six domains. The metal-specific pages drill into narrower industrial use-cases on top.
Display multi-metal allocations (physical bars, ETFs, mining equities) in a unified portfolio view. One API call refreshes every metal exposure on every page load.
Gold, silver, platinum engagement rings each priced at live spot plus fabrication. Nightly batch update or server-rendered per-request; both patterns fit the 15-minute refresh cadence.
Sovereign reserves and SWFs revalue gold holdings monthly at LBMA. A single historical call per month per metal replaces a spreadsheet process.
Gasoline cars use palladium or platinum; diesel uses platinum. OEMs pull both daily to optimise catalyst loadings and flag substitution opportunities.
Sibanye-Stillwater, Impala Platinum, Anglo American PGM baskets are priced off XPT + XPD + rhodium. Forecast revenue weekly off a live feed, not monthly from spreadsheets.
PAXG, XAUT and cross-chain gold-backed tokens need live XAU for peg calculations and collateral margining. Cache with a 60-second TTL to stay responsive without exhausting the rate limit.
Cross-metal questions answered here; metal-specific detail lives on the individual pages.
/api/commodities/historical/rates for single dates or /api/commodities/historical/timeseries for ranges up to 5 years per call.from=XAU&to=EUR (or any ISO 4217 code) and the API converts the spot USD price through our live forex cache. Historical endpoints work the same way using the matching historical FX rate, so your back-priced gold valuation on 2020-03-20 uses the 2020-03-20 EUR/USD rate. This is critical for multi-currency accounting, tax reporting and audit.Register free, upgrade to $9/mo Pro to unlock gold, silver, platinum and palladium together — plus 27 years of forex history and 420+ cryptocurrencies. Cancel anytime, no annual contract.