Performance audit
Am I good, and am I safe, answered for any Polymarket wallet from public data. No account, no API key, nothing to install.
Scoring a forecast requires knowing what someone believed before the outcome, which is why every other tool asks traders to log a probability against each position and then wait dozens of trades to learn anything. That step is unnecessary here. Every fill on Polymarket settles on Polygon with a price and a timestamp attached, so the record already exists: the price paid is the probability revealed.
Am I good
Each row is a band of entry prices. Paid is the average price actually paid, which is the probability the wallet revealed by buying. Happened is how often those positions paid out. A well-calibrated trader has the two columns tracking each other.
| Entry band | Positions | Paid | Happened | Gap |
|---|---|---|---|---|
| 0–10% | 18 | 6% | 6% | −0pp |
| 10–25% | 40 | 18% | 20% | +2pp |
| 25–40% | 84 | 32% | 25% | −7pp |
| 40–60% | 237 | 51% | 45% | −6pp |
| 60–75% | 152 | 67% | 64% | −3pp |
| 75–90% | 133 | 83% | 80% | −2pp |
| 90–100% | 53 | 95% | 96% | +1pp |
A positive gap means the wallet was under-confident in that band, it won more often than the price it paid implied. Negative means over-confident.
Am I safe
The resolved record
Every settled position, rebuilt from on-chain fills. Realised $14.4K across 717 positions, with $0 of entry fees paid.
| Market | Paid | Result | Size | P&L |
|---|---|---|---|---|
| Monterrey Open: Nikola Bartunkova vs Elise Mertens — Elise Mertens | 0.6066 | won | 1,432 | $563 |
| Monterrey Open: Diane Parry vs Ann Li — Diane Parry | 0.5083 | won | 984 | $484 |
| Winston-Salem Open: James Duckworth vs Arthur Fery — Arthur Fery | 0.6800 | won | 5,000 | $1.6K |
| Philadelphia: Tereza Valentova vs Julia Grabher — Julia Grabher | 0.0794 | lost | 5,300 | −$421 |
| Winston-Salem Open: Ignacio Buse vs Benjamin Bonzi — Ignacio Buse | 0.5900 | won | 4,352 | $1.8K |
| Monterrey Open: Yulia Starodubtseva vs Elise Mertens — Yulia Starodubtseva | 0.0360 | lost | 3,250 | −$117 |
| Winston-Salem Open: Fabian Marozsan vs James Duckworth — Fabian Marozsan | 0.4900 | lost | 120 | −$59 |
| Winston-Salem Open: Fabian Marozsan vs James Duckworth — James Duckworth | 0.5802 | won | 3,478 | $1.5K |
| Monterrey Open: Clara Tauson vs Diane Parry — Clara Tauson | 0.4800 | lost | 2,541 | −$1.2K |
| Monterrey Open: Clara Tauson vs Diane Parry — Diane Parry | 0.5324 | won | 1,002 | $469 |
| Philadelphia: Fiona Crawley vs Julia Grabher — Julia Grabher | 0.6610 | won | 2,138 | $725 |
| US Open, Qualification WTA: Elvina Kalieva vs Vendula Valdmannova — Vendula Valdmannova | 0.4585 | lost | 2,853 | −$1.3K |
| US Open, Qualification ATP: Liam Draxl vs Tristan Schoolkate — Liam Draxl | 0.5825 | lost | 4,518 | −$2.6K |
| US Open, Qualification WTA: Elvina Kalieva vs Vendula Valdmannova — Elvina Kalieva | 0.5771 | won | 661 | $279 |
| US Open, Qualification WTA: Heather Watson vs Harriet Dart — Harriet Dart | 0.2404 | won | 2,005 | $1.5K |
| US Open, Qualification ATP: Kei Nishikori vs Rei Sakamoto — Rei Sakamoto | 0.5891 | won | 1,867 | $767 |
| US Open, Qualification WTA: Kristina Liutova vs Martyna Kubka — Kristina Liutova | 0.8200 | won | 2,000 | $360 |
| US Open, Qualification WTA: Lucie Havlickova vs Nao Hibino — Lucie Havlickova | 0.8523 | won | 13 | $2 |
| Monterrey Open: Darja Vidmanova vs Nikola Bartunkova — Darja Vidmanova | 0.5437 | lost | 1,517 | −$825 |
| US Open, Qualification ATP: Daniel Rincon vs Tomas Barrios — Tomas Barrios | 0.7900 | won | 2,000 | $420 |
| US Open, Qualification WTA: Julieta Pareja vs Lucrezia Stefanini — Julieta Pareja | 0.4000 | lost | 2,000 | −$800 |
| US Open, Qualification ATP: Daniel Rincon vs Tomas Barrios — Daniel Rincon | 0.4900 | lost | 1,035 | −$507 |
| Monterrey Open: Ekaterina Alexandrova vs Clara Tauson — Clara Tauson | 0.6953 | won | 13,591 | $4.1K |
| Monterrey Open: Ekaterina Alexandrova vs Clara Tauson — Ekaterina Alexandrova | 0.5567 | lost | 7,414 | −$4.1K |
| Monterrey Open: Maja Chwalinska vs Alycia Parks — Maja Chwalinska | 0.7815 | lost | 1,111 | −$868 |
| US Open, Qualification WTA: Vendula Valdmannova vs Aliaksandra Sasnovich — Aliaksandra Sasnovich | 0.4115 | lost | 1,300 | −$535 |
| Philadelphia: Oksana Selekhmeteva vs Capucine Jauffret — Oksana Selekhmeteva | 0.5403 | won | 1,117 | $514 |
| Philadelphia: Oksana Selekhmeteva vs Capucine Jauffret — Capucine Jauffret | 0.0837 | lost | 13,783 | −$1.2K |
| Winston-Salem Open: Lorenzo Sonego vs James Duckworth — Lorenzo Sonego | 0.5803 | lost | 1,028 | −$596 |
| US Open, Qualification WTA: Yeon-Woo Ku vs Storm Hunter — Yeon-Woo Ku | 0.6100 | lost | 1,092 | −$666 |
| US Open, Qualification WTA: Moyuka Uchijima vs Lucie Havlickova — Moyuka Uchijima | 0.4638 | lost | 1,625 | −$754 |
| US Open, Qualification WTA: Kristina Penickova vs Harriet Dart — Kristina Penickova | 0.3700 | lost | 1,000 | −$370 |
| US Open, Qualification WTA: Tyra Caterina Grant vs Himeno Sakatsume — Tyra Caterina Grant | 0.6000 | lost | 1,000 | −$600 |
| US Open, Qualification ATP: Otto Virtanen vs Jack Pinnington Jones — Otto Virtanen | 0.2603 | won | 1,505 | $1.1K |
| US Open, Qualification WTA: Julieta Pareja vs Iryna Shymanovich — Julieta Pareja | 0.6800 | won | 700 | $224 |
| US Open, Qualification WTA: Linda Fruhvirtova vs Carson Branstine — Linda Fruhvirtova | 0.4250 | lost | 200 | −$85 |
| US Open, Qualification ATP: Daniel Rincon vs Jordan Lee — Jordan Lee | 0.1419 | lost | 1,050 | −$149 |
| US Open, Qualification WTA: Robin Montgomery vs Jeline Vandromme — Jeline Vandromme | 0.4500 | lost | 270 | −$122 |
| Monterrey Open: Oleksandra Oliynykova vs Diane Parry — Oleksandra Oliynykova | 0.2599 | lost | 1,623 | −$422 |
| US Open, Qualification ATP: Nicolas Mejia vs Liam Draxl — Liam Draxl | 0.6000 | won | 8,000 | $3.2K |
| Winston-Salem Open: Adrian Mannarino vs Lorenzo Sonego — Adrian Mannarino | 0.2897 | lost | 7,954 | −$2.3K |
| Monterrey Open: Panna Udvardy vs Maya Joint — Maya Joint | 0.4200 | lost | 2,000 | −$840 |
| US Open, Qualification ATP: Seong-Chan Hong vs Nikoloz Basilashvili — Nikoloz Basilashvili | 0.3100 | lost | 3,226 | −$1000 |
| Winston-Salem Open: Daniil Medvedev vs Martin Damm — Daniil Medvedev | 0.5634 | lost | 1,331 | −$750 |
| Winston-Salem Open: Raphael Collignon vs Rinky Hijikata — Raphael Collignon | 0.5571 | lost | 350 | −$195 |
| US Open, Qualification ATP: Colton Smith vs Andrea Pellegrino — Andrea Pellegrino | 0.5900 | lost | 261 | −$154 |
| Winston-Salem Open: Arthur Fery vs Cruz Hewitt — Cruz Hewitt | 0.1800 | lost | 48 | −$9 |
| US Open, Qualification WTA: Joanna Garland vs Leyre Romero Gormaz — Joanna Garland | 0.5900 | won | 70 | $29 |
| US Open, Qualification WTA: Kristina Liutova vs Tatiana Prozorova — Tatiana Prozorova | 0.5200 | lost | 3 | −$2 |
| Philadelphia: Anastasia Zakharova vs Kylie Collins — Kylie Collins | 0.2700 | won | 300 | $219 |
| US Open, Qualification WTA: Suzan Lamens vs Emerson Jones — Emerson Jones | 0.3700 | lost | 237 | −$88 |
| US Open, Qualification WTA: Jordyn Hazelitt vs Harriet Dart — Jordyn Hazelitt | 0.0657 | lost | 1,008 | −$66 |
| US Open, Qualification ATP: Jack Pinnington Jones vs Trevor Svajda — Trevor Svajda | 0.4587 | lost | 281 | −$129 |
| Philadelphia: Talia Gibson vs Lizette Cabrera — Lizette Cabrera | 0.4800 | won | 300 | $156 |
| Philadelphia: Lois Boisson vs Capucine Jauffret — Capucine Jauffret | 0.1340 | won | 15,884 | $13.8K |
| Philadelphia: Oksana Selekhmeteva vs Taylah Preston — Taylah Preston | 0.6800 | lost | 1,500 | −$1.0K |
| US Open, Qualification ATP: Titouan Droguet vs Daniel Rincon — Daniel Rincon | 0.7600 | won | 455 | $109 |
| US Open, Qualification ATP: Luka Pavlovic vs Juan Pablo Varillas — Luka Pavlovic | 0.3596 | won | 499 | $319 |
| US Open, Qualification ATP: Titouan Droguet vs Daniel Rincon — Titouan Droguet | 0.5460 | lost | 2,500 | −$1.4K |
| US Open, Qualification ATP: Mark Lajal vs Jordan Lee — Mark Lajal | 0.4700 | lost | 380 | −$179 |
Swipe the table sideways to see every column.
Polymarket only. Kalshi is a regulated exchange with a private database, its per-account endpoints require the account holder's own credentials, so there is no equivalent public record to read. Method →