Shuai Zhang

Where the 1607.0 rating comes from

From 609 matches played between 25 September 2006 and 16 November 2026, 587 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.

609 matches, from the most recent to the first

beaten by Tereza Valentová 0–2
16/11/26 · WTA 500 2026 · Qualifying — Qualifying competition · detail
−10.01617.0 → 1607.0
beat Kayla Day 2–1
16/11/26 · WTA 500 2026 · Qualifying — First round · detail
+11.21605.9 → 1617.0
beaten by Tereza Valentová 1–2
16/11/26 · WTA 250 2026 · First round · detail
−10.11615.9 → 1605.9
beaten by Ashlyn Krueger 0–2
16/11/26 · WTA 1000 2026 · First round · detail
−10.31626.2 → 1615.9
beaten by Leylah Annie Fernandez 0–2
31/08/26 · WTA Grand Slam 2026 · First round · detail
−9.11635.3 → 1626.2
beaten by Maria Timofeeva 0–2
24/08/26 · WTA 500 2026 · First round · detail
−15.11650.5 → 1635.3
beaten by Ann Li 0–2
13/08/26 · WTA 1000 2026 · Second round · detail
−11.91662.3 → 1650.5
beat Kayla Day 2–1
12/08/26 · WTA 1000 2026 · First round · detail
+9.51652.8 → 1662.3
beaten by Aryna Sabalenka 0–2
07/08/26 · WTA 1000 2026 · Third round · detail
−1.41654.3 → 1652.8
06/08/26 · WTA 1000 2026 · Second round · retirement · detail
±0.01654.3 → 1654.3
beat Yulia Putintseva 2–0
04/08/26 · WTA 1000 2026 · First round · detail
+13.01641.3 → 1654.3
beaten by Gabriela Knutson 1–2
27/07/26 · WTA 500 2026 · Qualifying — First round · detail
−15.11656.4 → 1641.3
beaten by Karolína Muchová 0–2
01/07/26 · WTA Grand Slam 2026 · Second round · detail
−3.31659.7 → 1656.4
beat Bianca Andreescu 2–0
29/06/26 · WTA Grand Slam 2026 · First round · detail
+12.91646.8 → 1659.7
beaten by Elena Gabriela Ruse 0–2
21/06/26 · WTA 500 2026 · Qualifying — First round · detail
−7.71654.4 → 1646.8
beat Milena Steinkamp 2–0
15/06/26 · WTA 500 2026 · Qualifying — First round · detail
+7.21647.2 → 1654.4
beat Magdalena Fręch 2–0
15/06/26 · WTA 500 2026 · Qualifying — Qualifying competition · detail
+11.61635.6 → 1647.2
beaten by Karolína Muchová 0–2
15/06/26 · WTA 500 2026 · First round · detail
−3.31639.0 → 1635.6
beat Heather Watson 2–0
08/06/26 · WTA 500 2026 · Qualifying — Qualifying competition · detail
+10.01628.9 → 1639.0
beat Hannah Klugman 2–1
08/06/26 · WTA 500 2026 · Qualifying — First round · detail
+6.91622.0 → 1628.9
beaten by Alexandra Eala 0–2
08/06/26 · WTA 500 2026 · First round · detail
−10.31632.2 → 1622.0
beaten by Ann Li 0–2
25/05/26 · WTA Grand Slam 2026 · First round · detail
−9.61641.8 → 1632.2
beaten by Talia Gibson 0–2
18/05/26 · WTA 500 2026 · Qualifying — Qualifying competition · detail
−12.11653.9 → 1641.8
18/05/26 · WTA 500 2026 · Qualifying — First round · detail
+10.61643.3 → 1653.9
beaten by Emma Navarro 1–2
18/05/26 · WTA 500 2026 · Quarterfinals · detail
−9.41652.7 → 1643.3
beat Diane Parry 2–0
18/05/26 · WTA 500 2026 · Second round · detail
+11.51641.2 → 1652.7
beat Cristina Bucșa 2–1
18/05/26 · WTA 500 2026 · First round · detail
+13.61627.6 → 1641.2
beaten by Ann Li 1–2
06/05/26 · WTA 1000 2026 · First round · detail
−10.31637.9 → 1627.6
beaten by Anastasia Potapova 0–2
24/04/26 · WTA 1000 2026 · Second round · detail
−8.71646.6 → 1637.9
beat Eva Lys 2–0
23/04/26 · WTA 1000 2026 · First round · detail
+15.51631.1 → 1646.6
beaten by Linda Nosková 1–2
13/04/26 · WTA 500 2026 · First round · detail
−6.21637.3 → 1631.1
beaten by Anastasia Potapova 0–2
06/04/26 · WTA 500 2026 · First round · detail
−8.71646.0 → 1637.3
beaten by Yuliia Starodubtseva 0–2
30/03/26 · WTA 500 2026 · First round · detail
−12.31658.3 → 1646.0
beaten by Sorana Cîrstea 0–2
18/03/26 · WTA 1000 2026 · First round · detail
−6.21664.5 → 1658.3
beaten by Dayana Yastremska 0–2
04/03/26 · WTA 1000 2026 · First round · detail
−10.71675.2 → 1664.5
23/02/26 · WTA 500 2026 · Quarterfinals · detail
+9.41665.7 → 1675.2
23/02/26 · WTA 500 2026 · First round · detail
+7.71658.1 → 1665.7
beat Martina Trevisan 2–0
23/02/26 · WTA 500 2026 · Qualifying — Qualifying competition · detail
+7.61650.5 → 1658.1
beat Katarzyna Piter 2–0
23/02/26 · WTA 500 2026 · Qualifying — First round · detail
+4.61645.8 → 1650.5
beaten by Magdalena Fręch 1–2
23/02/26 · WTA 500 2026 · Semifinals · detail
−11.31657.1 → 1645.8
beat Emma Navarro 2–0
23/02/26 · WTA 500 2026 · Second round · detail
+15.01642.0 → 1657.1
beaten by Hailey Baptiste 0–2
16/02/26 · WTA 1000 2026 · Qualifying — First round · detail
−10.11652.1 → 1642.0
beaten by Vera Zvonareva 0–2
09/02/26 · WTA 1000 2026 · Qualifying — First round · detail
−11.61663.7 → 1652.1
beaten by Taylah Preston 1–2
19/01/26 · WTA Grand Slam 2026 · First round · detail
−16.81680.4 → 1663.7
beaten by Kamilla Rakhimova 1–2
12/01/26 · WTA 500 2026 · Qualifying — First round · detail
−15.01695.4 → 1680.4
beaten by Elena Rybakina 0–2
01/01/26 · WTA 500 2026 · Second round · detail
−3.51698.9 → 1695.4
beat Ashlyn Krueger 2–1
31/12/25 · WTA 500 2026 · First round · detail
+12.01686.8 → 1698.9
beat Taylah Preston 2–1
30/12/25 · WTA 500 2026 · Qualifying — Qualifying competition · detail
+6.01680.8 → 1686.8
beat Fiona Ferro 2–1
29/12/25 · WTA 500 2026 · Qualifying — First round · detail
+8.11672.8 → 1680.8
beat Veronika Erjavec 2–0
27/10/25 · WTA 250 2025 · First round · detail
+6.01666.8 → 1672.8

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.