J. J. Wolf

Where the 1581.7 rating comes from

From 138 matches played between 13 August 2018 and 31 August 2026, 134 of them rated, and from them alone. Every line below was written at computation time: nothing is recomputed to show this page.

How to read this

On the right: the change this match produced, then the value before → after. A line's arrival value is the next line's starting value, down to the starting rating given to every newcomer. A ±0.0 is a counted match that did not move the rating, a walkover for instance.

138 matches, from the most recent to the first

beaten by Alexander Bublik 1–3
31/08/26 · ATP Grand Slam 2026 · First round · detail
−5.31587.0 → 1581.7
beaten by James Duckworth 0–2
13/08/26 · ATP 1000 2026 · First round · detail
−13.61600.6 → 1587.0
beat Sho Shimabukuro 2–1
12/08/26 · ATP 1000 2026 · Qualifying — Qualifying competition · detail
+13.21587.4 → 1600.6
10/08/26 · ATP 1000 2026 · Qualifying — First round · detail
+10.31577.2 → 1587.4
beaten by Jack Pinnington Jones 0–2
30/03/26 · ATP 250 2026 · Qualifying — First round · detail
−12.81590.0 → 1577.2
beaten by Tristan Boyer 0–1
10/02/25 · ATP 250 2025 · Qualifying — First round · retirement · detail
±0.01590.0 → 1590.0
beaten by Nuno Borges 1–2
12/08/24 · ATP 1000 2024 · Qualifying — First round · detail
−8.81598.8 → 1590.0
beat Zachary Svajda 2–0
29/07/24 · ATP 500 2024 · First round · detail
+8.71590.1 → 1598.8
beaten by Miomir Kecmanović 0–2
29/07/24 · ATP 500 2024 · Second round · detail
−9.21599.3 → 1590.1
beat Kevin King 2–0
22/07/24 · ATP 250 2024 · Qualifying — First round · detail
+10.11589.2 → 1599.3
beaten by Juncheng Shang 0–2
22/07/24 · ATP 250 2024 · Qualifying — Qualifying competition · detail
−8.71597.9 → 1589.2
beaten by Arthur Rinderknech 0–2
22/07/24 · ATP 250 2024 · First round · detail
−11.71609.6 → 1597.9
beaten by Carlos Alcaraz 0–3
27/05/24 · ATP Grand Slam 2024 · First round · detail
−1.51611.1 → 1609.6
beaten by Stefano Napolitano 0–2
08/05/24 · ATP 1000 2024 · First round · detail
−17.01628.2 → 1611.1
beaten by Hamad Medjedovic 0–2
07/05/24 · ATP 1000 2024 · Qualifying — Qualifying competition · detail
−13.21641.4 → 1628.2
06/05/24 · ATP 1000 2024 · Qualifying — First round · detail
+7.61633.8 → 1641.4
beaten by Marcos Giron 0–2
01/04/24 · ATP 250 2024 · Second round · detail
−9.41643.2 → 1633.8
01/04/24 · ATP 250 2024 · First round · detail
+8.41634.8 → 1643.2
beaten by Vít Kopřiva 1–2
19/03/24 · ATP 1000 2024 · Qualifying — Qualifying competition · detail
−13.91648.7 → 1634.8
beat Eliot Spizzirri 2–0
18/03/24 · ATP 1000 2024 · Qualifying — First round · detail
+7.01641.7 → 1648.7
beaten by Thiago Seyboth Wild 0–2
06/03/24 · ATP 1000 2024 · First round · detail
−16.01657.7 → 1641.7
beaten by Sebastián Báez 1–3
15/01/24 · ATP Grand Slam 2024 · First round · retirement · detail
±0.01657.7 → 1657.7
beaten by Luca Van Assche 0–2
08/01/24 · ATP 250 2024 · First round · detail
−17.91675.5 → 1657.7
beaten by James Duckworth 0–2
01/01/24 · ATP 250 2024 · First round · detail
−15.61691.1 → 1675.5
30/10/23 · ATP 1000 2023 · Qualifying — Qualifying competition · detail
+10.21680.9 → 1691.1
30/10/23 · ATP 1000 2023 · Qualifying — First round · retirement · detail
±0.01680.9 → 1680.9
beaten by Mackenzie McDonald 1–2
30/10/23 · ATP 1000 2023 · First round · detail
−10.51691.4 → 1680.9
beaten by Jiří Lehečka 0–2
23/10/23 · ATP 500 2023 · First round · detail
−11.91703.4 → 1691.4
beat Sebastián Báez 2–0
16/10/23 · ATP 250 2023 · First round · detail
+14.01689.4 → 1703.4
beaten by Laslo Djere 0–2
16/10/23 · ATP 250 2023 · Second round · detail
−14.41703.8 → 1689.4
beaten by Ugo Humbert 0–2
06/10/23 · ATP 1000 2023 · Fourth round · detail
−11.41715.2 → 1703.8
beat Matteo Arnaldi 2–1
06/10/23 · ATP 1000 2023 · Third round · detail
+11.91703.3 → 1715.2
beat Cameron Norrie 2–1
05/10/23 · ATP 1000 2023 · Second round · detail
+14.71688.7 → 1703.3
beat Pedro Cachin 2–1
04/10/23 · ATP 1000 2023 · First round · detail
+9.91678.8 → 1688.7
beat Max Purcell 2–0
25/09/23 · ATP 500 2023 · Qualifying — Qualifying competition · detail
+9.91668.8 → 1678.8
beat Bai Yan 2–0
25/09/23 · ATP 500 2023 · Qualifying — First round · detail
+6.21662.7 → 1668.8
beaten by Matteo Arnaldi 0–2
25/09/23 · ATP 500 2023 · First round · detail
−12.91675.6 → 1662.7
beaten by Zhang Zhizhen 2–3
28/08/23 · ATP Grand Slam 2023 · First round · detail
−14.91690.5 → 1675.6
beaten by Alex de Minaur 1–2
14/08/23 · ATP 1000 2023 · First round · detail
−7.21697.7 → 1690.5
07/08/23 · ATP 1000 2023 · First round · detail
−10.41708.2 → 1697.7
beaten by Tallon Griekspoor 0–2
31/07/23 · ATP 500 2023 · Quarterfinals · detail
−10.41718.6 → 1708.2
beat Radu Albot 2–0
31/07/23 · ATP 500 2023 · Second round · detail
+7.41711.2 → 1718.6
beat Michael Mmoh 2–0
31/07/23 · ATP 500 2023 · Third round · detail
+8.31702.8 → 1711.2
beaten by Taylor Harry Fritz 0–2
24/07/23 · ATP 250 2023 · Semifinals · detail
−7.61710.4 → 1702.8
beat Maxime Cressy 2–0
24/07/23 · ATP 250 2023 · Second round · detail
+8.51701.9 → 1710.4
beat Jason Jung 2–0
24/07/23 · ATP 250 2023 · First round · detail
+6.21695.7 → 1701.9
beat Dominik Koepfer 2–0
24/07/23 · ATP 250 2023 · Quarterfinals · detail
+10.51685.2 → 1695.7
beaten by Alexander Bublik 0–3
04/07/23 · ATP Grand Slam 2023 · Second round · detail
−10.41695.6 → 1685.2
beat Enzo Couacaud 3–0
03/07/23 · ATP Grand Slam 2023 · First round · detail
+6.71688.9 → 1695.6
beaten by Tommy Paul 1–2
26/06/23 · ATP 250 2023 · Quarterfinals · detail
−8.71697.6 → 1688.9

Only the matches the source publishes appear; what is missing is listed. The source gives the day, not the hour: two matches on the same day are ordered by a reproducible rule, which is not necessarily the real order.