⬡ LIVE
XAU/USD$4,238.80 | XAG/USD$67.97 | XPT/USD$1,712.20 | XPD/USD$1,291.50 | XCU/USD$14,208.78/t | XAL/USD$3,574.50/t | XNI/USD$15,800.00/t | XZN/USD$2,900.00/t | XPB/USD$2,050.00/t | XSN/USD$33,000.00/t | XAU/USD$4,238.80 | XAG/USD$67.97 | XPT/USD$1,712.20 | XPD/USD$1,291.50 | XCU/USD$14,208.78/t | XAL/USD$3,574.50/t | XNI/USD$15,800.00/t | XZN/USD$2,900.00/t | XPB/USD$2,050.00/t | XSN/USD$33,000.00/t
612+ Metal Symbols · LME · LBMA · COMEX

The European Metals
Price API

Real-time and historical prices for gold, silver, copper and 600+ industrial metals. EUR-native pricing, GDPR-compliant, with the world's only native Odoo 19 integration.

GDPR Compliant
99.9% Uptime SLA
TLS 1.3 Encrypted
EU-Hosted Data
metals-api.eu / v1 / latest
# Fetch live gold price in EUR
GET https://metals-api.eu/v1/latest
  ?access_key=YOUR_KEY
  &base=EUR
  &symbols=XAU,XAG,XCU

── Response 200 OK ──────────────────
{
  "success": true,
  "timestamp": 1749811200,
  "base": "EUR",
  "rates": {
    "XAU": 0.000323,  // €3,096/troy oz
    "XAG": 0.032811,  // €30.48/troy oz
    "XCU": 0.234567   // €4.26/lb
  },
  "unit": "per_troy_oz",
  "latency_ms": 42
}

Real-Time Metal Prices

Streaming prices updated every minute from LME, LBMA, and COMEX. All prices shown in USD per troy oz.

XAU · LBMA
Gold
$3,312.40
USD / troy oz
▲ +$26.90  (+0.82%)
XAG · LBMA
Silver
$32.84
USD / troy oz
▲ +$0.37  (+1.14%)
XCU · COMEX
Copper
$4.61
USD / lb
▼ -$0.02  (-0.34%)
XNI · LME
Nickel
$7.28
USD / lb
▲ +$0.04  (+0.61%)
XAL · LME
Aluminium
$1.18
USD / lb
▼ -$0.003  (-0.22%)
XPT · LBMA
Platinum
$992.50
USD / troy oz
▲ +$4.70  (+0.47%)

Gold (XAU) Live Price

Loading... ⬤ Live — updates every 30s
Fetching live data...

Built for European Professionals

Every feature designed around what industrial buyers, traders, and ERP developers actually need — not a US-first API bolted onto Europe.

612+ Metal Symbols
Full coverage across LME, LBMA, and COMEX. Precious, base, minor, and rare earth metals all in one endpoint.
LME · LBMA · COMEX
Real-time to Daily
Choose your frequency: 1-minute streaming, 15-minute snapshots, hourly consolidations, or end-of-day OHLC bars.
WebSocket + REST
Never-Expiring Bundles
Prepay for API call bundles that never expire. Roll over unused calls month to month — your budget, your pace.
Unique in Market
🔷
Odoo 19 Native
The only metals API with an official, maintained Odoo 19 Enterprise module. One-click install from the App Store.
Exclusive
EUR-Native Pricing
Fixed EUR prices, invoiced in EUR, hosted in the EU. No FX risk, no surprise currency conversion, full GDPR compliance.
GDPR · EU-Hosted

Simple, EUR-Fixed Plans

No FX risk. No hidden fees. Cancel anytime. Upgrade or downgrade instantly.

Monthly Annual Save up to 20%
Spot
0 /mo
 
Perfect for evaluation and low-volume projects.
  • 100 API calls / month
  • Daily price data
  • 50 metal symbols
  • REST API access
  • JSON responses
Get Started Free
Alloy
7 /mo
 
For startups and small teams integrating metal prices.
  • 1,000 API calls / month
  • Hourly price updates
  • 200 metal symbols
  • Historical data (1 year)
  • Email support
Start Free Trial
Titan
104 /mo
 
For enterprise trading desks and high-volume production systems.
  • 250,000 API calls / month
  • 1-minute real-time data
  • WebSocket streaming
  • 612+ metal symbols
  • Full historical archive
  • Dedicated support
  • SLA guarantee
Start Free Trial

Why Choose metals-api.eu?

We built the API we wished existed. Here's how we stack up against the incumbents.

Feature metals-api.eu Metals-API.com MetalpriceAPI.com
Free Trial (no card) 100 calls forever ⚠️ Card required ⚠️ Card required
EUR-Native Pricing Fixed EUR, EU invoice USD only USD only
Correct Price Format Price per troy oz / lb Inverted (oz per unit) ⚠️ Inconsistent units
GDPR Compliant EU-hosted, DPA available US-hosted US-hosted
Never-Expiring Bundles Prepaid, no expiry Monthly reset Monthly reset
Odoo 19 Native Module Official App Store module Not available Not available
WebSocket Streaming All paid plans REST only REST only
Webhooks Crucible+ Not supported ⚠️ Enterprise only
LME + LBMA + COMEX All three exchanges ⚠️ Partial ⚠️ Partial
612+ Metal Symbols 612 symbols ⚠️ ~60 symbols ⚠️ ~80 symbols
1-Minute Real-Time Data Titan plan ⚠️ Enterprise only 15-min minimum
Annual Discount Up to 20% off ⚠️ Partial ⚠️ Partial

Integrate in Minutes

Clean REST API with predictable JSON responses. SDKs for Python, JavaScript, and PHP. Full OpenAPI spec available.

# pip install metals-api-eu
import metals_api_eu

client = metals_api_eu.Client(
    api_key="YOUR_API_KEY"
)

# Get latest gold price in EUR
result = client.latest(
    base="EUR",
    symbols=["XAU", "XAG", "XCU"]
)

print(result.rates["XAU"])
# → 0.000323 (EUR per troy oz inverse)

# Get price in human-readable format
gold_eur = 1 / result.rates["XAU"]
print(f"Gold: €{gold_eur:.2f}/troy oz")
# → Gold: €3,096.00/troy oz
// npm install metals-api-eu
import { MetalsAPI } from 'metals-api-eu';

const client = new MetalsAPI({
  apiKey: 'YOUR_API_KEY'
});

// Fetch latest prices
const result = await client.latest({
  base: 'EUR',
  symbols: ['XAU', 'XAG', 'XCU']
});

console.log(result.rates.XAU);
// → 0.000323

// WebSocket streaming (Titan plan)
client.stream(['XAU', 'XAG'], (tick) => {
  console.log(`${tick.symbol}: ${tick.price}`);
});
// composer require metals-api/metals-api-eu
use MetalsAPI\Client;

$client = new Client([
    'api_key' => 'YOUR_API_KEY'
]);

// Fetch latest metal prices
$result = $client->latest([
    'base'    => 'EUR',
    'symbols' => ['XAU', 'XAG', 'XCU']
]);

echo $result['rates']['XAU'];
// → 0.000323

$gold_eur = 1 / $result['rates']['XAU'];
echo "Gold: €" . number_format($gold_eur, 2);
// → Gold: €3,096.00
API Response
{
  "success": true,
  "timestamp": 1749811200,
  "date": "2026-06-13",
  "base": "EUR",
  "unit": "per_troy_oz",
  "source": "LBMA",
  "rates": {
    "XAU": 0.000323,
    "XAG": 0.032811,
    "XCU": 0.234567
  },
  "meta": {
    "plan": "crucible",
    "calls_remaining": 9847,
    "calls_reset": "2026-07-01",
    "latency_ms": 42
  }
}