FPSHQ API
A free REST API for FPS forecasts, hardware benchmarks and PC Score. For bots, extensions, plugins and any integrations.
https://fpshq.com/api/v1/
Endpoints
/fps?game=cyberpunk-2077&gpu=rtx-4070-super&cpu=ryzen-7-7800x3d&res=1440p&preset=ultra
FPS forecast for a game + GPU pair. Returns avg/min/max FPS, a verdict and the data source (benchmark/prediction).
▶ Try the request/search?q=cyber&type=game&limit=10
Search games, GPUs and CPUs by name. type: game | gpu | cpu | all.
▶ Try the request/game/{slug}
Game data: year, demandingness, Metacritic, Steam rating, minimum/recommended GPU.
▶ Try the request/pc-score?gpu=rtx-4070-super&cpu=ryzen-9-9950x3d&ram=32
PC Score (0-100) and S–F tier calculation for a hardware pair.
▶ Try the requestExample /fps response
{
"ok": true,
"game": { "slug": "cyberpunk-2077", "name": "Cyberpunk 2077" },
"gpu": { "slug": "rtx-4070-super", "name": "GeForce RTX 4070 Super" },
"cpu": { "slug": "ryzen-7-7800x3d", "name": "Ryzen 7 7800X3D" },
"resolution": "1440p",
"preset": "ultra",
"fps": 72,
"fps_min": 58,
"fps_max": 88,
"fps_range": [58, 88],
"expected_error_pct": 21.3,
"fps_1pct_low": 56,
"fps_1pct_low_range": [45, 69],
"verdict": "good",
"source": "prediction",
"basis": "model",
"bottleneck": { "limited_by": "GPU", "pct": 3, "gpu_load_pct": 100 },
"url": "https://fpshq.com/games/cyberpunk-2077/"
}
Data provenance — source field
Measured FPS from our benchmark database (106 independent measurements across games, GPUs, resolutions and presets). Cells taken from aggregated review tables rescaled by game/GPU factors are returned as "source": "prediction" with "basis": "aggregate"; independent tests have "basis": "measured", model estimates "basis": "model".
Modeled estimate computed from the GPU benchmark score and the game's demand score, with resolution scaling and optional CPU-bottleneck correction. Used when no measured data exists for the exact combo.
fps_range / fps_min–fps_max: for model estimates where at least one held-out check source has a median error above 25 % (FPSHQ backtest by GPU class and resolution, model accuracy) — an interval around the median error that holds about half of held-out benchmarks (three sources weighted equally); otherwise both equal fps and fps_range is null. fps_1pct_low_range — the same interval for 1% low. Quote the range, not the single number.
Every /fps response carries this field, so measured benchmarks and modeled predictions are always distinguishable — label them accordingly in your product.
Supported inputs
res — 1080p, 1440p, 4K (aliases: 2k → 1440p, 2160p → 4K)preset — low, medium, high, ultracpu — optional in /fps; when provided, the response includes CPU-bottleneck analysis and the FPS estimate is corrected for CPU-limited scenariosslugs — discover via /search or the /gpus, /cpus, /games catalog endpointsQuick start
// JavaScript
const r = await fetch('https://fpshq.com/api/v1/fps?game=cyberpunk-2077&gpu=rtx-4070-super&cpu=ryzen-7-7800x3d&res=1440p&preset=ultra');
const data = await r.json();
console.log(`${data.fps} FPS (${data.source})`); // 72 FPS (benchmark)
# curl
curl "https://fpshq.com/api/v1/fps?game=cyberpunk-2077&gpu=rtx-4070-super&res=1440p"
CORS is enabled (Access-Control-Allow-Origin: *) — the API can be called directly from browsers, extensions and mobile apps. No API key required.
License, attribution & rate limits
FPSHQ data is licensed under CC BY 4.0, the same as our open datasets: you may use it in commercial and non-commercial products. Attribution is required: next to the data, write "Source: FPSHQ" with a link to the relevant FPSHQ page (every API response includes a ready-to-use url field) or to FPSHQ.com. Label model estimates as estimates (source field).
No API key, no hard quota. Fair use is ~60 requests/min per IP. GET responses are cached for 1 hour on our side (Cache-Control: max-age=3600) — please cache on your side as well. Need sustained higher volume or a bulk export? Contact us, we're happy to arrange it.
Integration questions, higher limits, bulk exports: Telegram @denissatoshi.
Terms of use
FPSHQ API data is free and licensed under CC BY 4.0, like our open datasets: you may use it in any project, including commercial ones. Attribution is required: next to the data, write “Source: FPSHQ” with a link to the FPSHQ page (the url field in every response) or to FPSHQ.com. For higher request limits or bulk exports, message us on Telegram @denissatoshi.
The API powers our PC Power Test, browser extension and social plugins. Want to integrate FPS forecasts into your project — go ahead and use it.
Key figures
Unique FPSHQ metrics from this page's data
FPSHQ data volume by section
Records in the database by section: games, FPS measurements, GPUs, mobile chips and games, CPUs, emulators.
What is FPSHQ and what data does it run on?
FPSHQ is a games and PC database: 191,286 games with system requirements, 1,965 GPUs and 456 CPUs with performance scores, 165 mobile chips, 49 emulators and an FPS database (measurements: 106 independent measurements and 4,800 rows of aggregated review data; model estimates: 47,950). The single FPSHQ model estimates FPS for any game + GPU + CPU combination at 1080p/1440p/4K; 1,401 users have completed the online PC test. Every number on the pages comes from this database, with an update date and a link to the methodology.
- games in the database
- 191,286
- GPUs in the catalogue (incl. vendor variants)
- 1,965
- CPUs in the catalogue
- 456
- FPS measurement rows in the database
- 52,856
Frequently asked questions
Where does FPSHQ get its data?
What is the single FPSHQ FPS model?
How often is the data updated?
Can I use FPSHQ data on my own site?
Methodology and sources
This page uses the FPSHQ database: the GPU and CPU catalogue with synthetic benchmark scores, official game system requirements, FPS measurements from users of the FPSHQ app and the FPSHQ performance model. Calculated values are estimates, not a measurement of your exact configuration: the real result depends on drivers, settings and the rest of the hardware. More about the methodology →