Price at your usage
The lowest published plans for each monthly gold request volume; commercial access is covered in the FAQ.
| Requests a month | goldprice.dev | Sifting.io |
|---|---|---|
| 1,000 | Free · $0/month | Free · $0 (10,000 calls) |
| 10,000 | Basic · $19/month | Free · $0 (10,000 calls, non-commercial) |
| 100,000 | Basic · $19/month | Builder · $79/month billed annually (250,000 calls) |
As of 18 Oct 2026, Sifting.io's free allowance covers 10,000 monthly calls for non-commercial use. Its $79/month Builder price requires annual billing and covers internal use and personal side projects. Commercial display requires Pro or Ultra.
Switch in a few minutes
Swap the Sifting.io last-trade request for a USD gold spot request on your server.
Sifting.io
# Change: URL and auth
curl -G \
"https://api.sifting.io/v1/last/trade/commodities/XAUUSD" \
-H "X-API-Key: YOUR_API_KEY"// Change: URL and auth
const url = new URL(
"https://api.sifting.io/v1/last/trade/commodities/XAUUSD"
);
url.search = new URLSearchParams({
}).toString();
const response = await fetch(url, {
method: "GET",
headers: {
"X-API-Key": "YOUR_API_KEY",
},
});
if (!response.ok) {
throw new Error(String(response.status));
}
console.log(await response.json());import requests
# Change: URL and auth
response = requests.get(
"https://api.sifting.io/v1/last/trade/commodities/XAUUSD",
params={
},
headers={
"X-API-Key": "YOUR_API_KEY",
},
timeout=10,
)
response.raise_for_status()
print(response.json())goldprice.dev
# Change: URL and auth
curl -G \
"https://api.goldprice.dev/v1/prices" \
--data-urlencode "symbol=XAU-USD-SPOT" \
-H "Authorization: Bearer YOUR_API_KEY"// Change: URL and auth
const url = new URL(
"https://api.goldprice.dev/v1/prices"
);
url.search = new URLSearchParams({
"symbol": "XAU-USD-SPOT",
}).toString();
const response = await fetch(url, {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
},
});
if (!response.ok) {
throw new Error(String(response.status));
}
console.log(await response.json());import requests
# Change: URL and auth
response = requests.get(
"https://api.goldprice.dev/v1/prices",
params={
"symbol": "XAU-USD-SPOT",
},
headers={
"Authorization": "Bearer YOUR_API_KEY",
},
timeout=10,
)
response.raise_for_status()
print(response.json())Why teams switch
An ongoing place to start
5,000 requests each month on Free let you test a recurring workload. No card is required. Every plan allows commercial use; paid plans need no credit link; Free requires a visible link to goldprice.dev near the prices. The usage table shows the lowest tier for each request volume, giving a prototype a clear path to a larger workload.
History for gold applications
Daily gold bars reach 1996 on Plus and Pro. Free covers 30 days; Basic covers one year. Each returned observation includes timestamps and staleness flags, so your application can show the age of a price alongside its value. The long daily series supports a different timescale from intraday bars.
One service for code and agents
MCP is included on every plan alongside REST. Gold, silver and copper are on every plan. The same account supports application requests and agent tools, with the access limits of its selected tier.
When they are the better pick
Sifting.io is the better fit for multi-market coverage, more WebSocket symbol subscriptions, higher request volumes on Builder and above, or minute bars with long history. As of 18 Oct 2026, it also states uptime SLAs on paid plans. The trade-off is per-market pricing and use restrictions: Free is non-commercial, Builder covers internal use and personal side projects, and commercial use requires Pro or Ultra, subject to plan terms. Its history section says commodities have 20+ years, while plan cards say 10+.
Related comparisons
Get a free API keySources and review date
Reviewed .