Skip to main content
Win rate tells you what a player or a pair has done. It does not tell you whether that was more or less than expected. Winning 70% of your matches is poor form for the world number one and an outstanding run for a pair ranked 40th. What matters is the gap between the results and the strength behind them. The Padel API measures that gap with one method and publishes it through two endpoints:

Player form

GET /api/players/{id}/form. How a player is doing lately against what was expected of them.

Pair synergy

GET /api/pairs/{player1}-{player2}/synergy. Whether two players together win more than their individual strength predicts.
Same measurement, different subject. Both return the same core fields with the same meaning, so a client that reads one can read the other.

The measurement

For every match, the API takes the Elo rating of all four players as it stood right before that match and turns the gap between both pairs into a win probability. Averaging those probabilities over a set of matches gives the win rate the player or the pair was expected to reach. Comparing it with the win rate they actually reached gives the gap. Because the ratings are taken at the time of each match, the expectation only uses what was known before the ball was served. A player who has since climbed the rankings is not judged retroactively against their current rating.

Shared fields

Both endpoints accept the same filters as the stats endpoints: after_date, before_date, level and round.

How to read delta

delta is null when there are too few matches for the gap to mean anything. A handful of results is dominated by luck, so the API publishes the rates but withholds the gap. matches_played tells you how much evidence is behind any number you do get: a delta of +12 over 60 matches is a much stronger statement than the same value over 8. trend looks at how delta moves across by_period, giving more weight to the periods with more matches. It is null when too few periods have a delta to tell a direction.
A good delta does not last forever by construction. Every win against expectation lifts the players’ ratings, which raises what is expected of them next. Sustained over-performance is what a player or pair on the way up looks like; a delta that stays high for a long time is a genuinely remarkable run.
Qualification matches count in both endpoints. Since the expectation already accounts for how strong the opponents are, beating a much weaker pair in qualifying barely moves the gap.

Player form

GET /api/players/{id}/form measures a recent window: the last 180 days by default, ending today. Set after_date and before_date to measure any other window. by_period is split by calendar month.
On top of the shared fields, form adds:
Keep the two time axes apart. by_period is a series of consecutive, non-overlapping months: plot it, and read trend from it. windows is three nested zooms that all end today: show them side by side, never on the same line.
Form is measured for the player, whoever they played with. A player who changed partners mid-season carries the same form across both partnerships, and each partner’s rating is part of the expectation.

Pair synergy

GET /api/pairs/{player1}-{player2}/synergy measures every match the pair has played together by default, because a partnership is judged over its whole life, not the last few weeks. by_period is split by calendar quarter, so you can see a pair settling in or wearing out.
The expectation for a pair is built from each player’s own rating, and those ratings come from every match they play, with this partner or any other. So a positive delta says the two of them together win more than their individual strength predicts: the partnership adds something. A negative one says they are worth less together than apart. The endpoint returns 404 when the two players have never played together.

Next steps

Elo rating

How the rating behind the expectation is built and updated.

Match prediction model

How a rating gap becomes a calibrated win probability.

Padel statistics

Career win rate, titles and set and game tallies, to put next to form and synergy.

Pairs endpoint

Profile of a pair, with links to its matches, stats and synergy.