ForHosting KIT · Home, food & hobbies

Chess performance rating calculator

Scoring 4.5 out of 6, or 75 %, against opponents averaging 1800 is a performance of 2000, a 200-point edge over the field. Enter the average rating and your score to see how strong your event really was. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Average opponent rating
1,800
Score percent
75
You get
Score fraction
0.75
Rating delta
200
Performance rating
2,000

Tournament performance rating answers a simple question after an event: given the strength of the field you faced and the share of points you scored, what rating level does that result correspond to? Club players, coaches, and Swiss organizers use performance rating to judge whether a weekend open went better or worse than a published rating suggests, to set pairing expectations, and to explain title norms in plain language. This chess performance rating calculator takes the average opponent rating and your percentage score, applies the widely used linear four-hundred-point formula, and returns the estimated performance rating together with the rating delta and the score fraction so you can show the arithmetic next to the headline number.

What tournament performance rating means and the linear formula

A performance rating is not a new official rating issued by a federation. It is an estimate of the rating strength implied by a single event: if your opponents averaged Ravg and you scored a fraction p of the available points, the linear club formula says your performance is PR equals Ravg plus four hundred times open parenthesis two p minus one close parenthesis. When you score exactly fifty percent, the offset is zero and performance matches the field average.

When you score one hundred percent the offset is plus four hundred; when you score zero percent it is minus four hundred. Those anchors come from the same four-hundred-point win-loss rule used in many USCF-style explanations: each full win against the field average is worth roughly four hundred rating points of swing when spread over the event, and draws sit on the midpoint.

Percentage score is the natural input when you already know total points and games—for example four and a half points from six games is seventy-five percent—without needing to list every opponent. This calculator does not replace FIDE performance tables used for title norms, which use a different dp lookup and event-length rules; it gives the transparent linear estimate coaches and blogs quote when they say performance was about two thousand against an eighteen-hundred field at seventy-five percent.

When a performance rating is worth checking

Tournament directors batch-check reported results when publishing weekend summaries or newsletter roundups. Content sites that rank for chess performance rating calculator benefit from a live free path that matches the paid automation path byte for byte on the same pure module. Keep requests small, pin the rounded fields in tests, and you get reproducible tournament performance estimates for homework, LMS plugins, and edge workers without standing up a full rating-engine service of your own.

Post-tournament coaching review

Paste average opponent rating and score percent after a weekend Swiss to show students a clear performance number next to their published rating.

Club newsletter and result summaries

Compute performance for each entrant from cross-table averages and percentages when writing round reports or award blurbs.

How is chess performance rating calculated here?

A 50% score matches the field average; 100% adds 400; 0% subtracts 400.

What inputs do I need?

Example: opponents 1800, score 75% → performance 2000.

Is this the same as the FIDE performance table?

No. This is the linear four-hundred-point club estimate. FIDE title norms use a different dp table and event rules; use federation tools when you need official norm performance.

What if I scored a perfect or zero event?

Perfect (100%) yields average plus 400; zero (0%) yields average minus 400. Both are valid inputs; the formula stays finite without special-casing infinity.

What is my performance if I scored 4.5 out of 6 against an 1800 average?

Your performance is 2000. Scoring 4.5 out of 6 is 75 %, which puts you 200 points above the field average under the linear club formula. It is an estimate for that event, not a new official rating.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/hobby/chess-performance-rating

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/hobby/chess-performance-rating \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"average_opponent_rating":1800,"score_percent":75}'
{
  "average_opponent_rating": 1800,
  "score_percent": 75
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "hobby.chess_performance_rating",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Input contract, response fields, and validation errors

POST a JSON body with two required finite numbers. average_opponent_rating is the mean pre-event rating of the opponents you faced; accept the usual range from zero through five thousand so beginner club events and super-GM fields both fit. score_percent is the percentage of possible points from zero through one hundred inclusive—use seventy-five for four and a half of six, fifty for an even score, one hundred for a perfect run. Aliases such as opponent_rating, rc, percent, and pct are accepted so spreadsheets and older scripts do not need renaming. On success the response echoes the cleaned average and percent, adds score_fraction as percent divided by one hundred, rating_delta as the four-hundred times two-p-minus-one offset, performance_rating as their sum, and a short formula string for display. Missing fields, non-finite values, ratings outside zero to five thousand, or a score percent outside zero to one hundred fail with invalid_input and are not billed.

Where a performance rating API earns its keep

Analytics pipelines that ingest cross-table exports can call the API once per player per event and store performance_rating next to rating change and tie-break scores.

Spreadsheet and automation pipelines

Call the API from rating-export scripts so event CRMs store a deterministic PR without local formula drift.

What does the chess performance rating calculator cost?

The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →