Frequently Asked Questions
Everything you need to know about how Nexus works
ELO Ratings
An ELO rating is a numerical measure of your competitive skill level. The system was originally developed for chess and is now widely used in table tennis and many other sports. Your rating goes up when you beat higher-rated players and down when you lose to lower-rated ones. The size of the change depends on the ratings gap — beating a much stronger player earns you more points than beating someone at your level.
Every player's rating is seeded from their division placement — not a generic default. This means ratings are calibrated to real competitive tiers from day one.
| Division | Starting Rating |
|---|---|
| Premier League | 2000 |
| 1st Division | 1800 |
| 2nd Division | 1600 |
| 3rd Division | 1500 |
| 4th Division | 1400 |
| 5th Division | 1300 |
| 6th Division | 1200 |
| 7th Division | 1100 |
Players with no known division default to 1200. These starting points then evolve through actual match results.
The K-factor controls how much your rating can change in a single match. Higher-rated players have a lower K-factor — their ratings are more stable since they've proven themselves over many games. Lower-rated players have a higher K-factor so their ratings can converge to their true level faster.
| Rating Range | K-Factor | Max change per match |
|---|---|---|
| Above 2000 | 16 | ~16 pts |
| 1500 – 2000 | 24 | ~24 pts |
| Below 1500 | 32 | ~32 pts |
The same K-factor applies regardless of which league or format the game was played in — there's no "soft" local calculation that creates separate isolated pools.
All competitive matches across all rated formats feed into your single unified rating:
- CTTT League (all divisions)
- Summer League
- CTTT Junior League
- Super Vets League
- Open Tournaments
- Knockout rounds
Friendlies and practice matches are not rated.
New players who aren't participating in a league yet are added with a default rating of 1200. This is a safe, conservative starting point that prevents new unknowns from distorting the ratings of established players.
However, if a new player is well known within the local table tennis community — for example, someone who has played elsewhere or is clearly experienced — an admin can exercise discretion and either assign them a division placement or set a more appropriate initial rating directly. The system will then use that division's standard starting rating as the seed.
This doesn't need to be perfectly accurate. The ELO system will self-correct through match results regardless. The benefit of a better initial seed is simply that it calibrates faster — the player reaches a representative rating in fewer games, and there's less temporary distortion to the players around them in the early period. With K=32 at lower ratings, convergence typically happens within 10–15 games either way.
Yes. When a player moves between divisions, their rating is adjusted to better reflect their new competitive context. This prevents two common problems:
- Without bumps on relegation: A relegated player would be too strong for their new division and systematically over-reward opponents by being an "easy win" against a high-rated player.
- Without bumps on promotion: A promoted player would be too weak for their new division and over-penalise opponents for losing to someone who is underrated.
Each division crossing creates a calibrated bridge point between the two competitive pools.
Inactivity Decay
Inactivity decay is a gradual reduction in your ELO rating if you stop competing for an extended period. It exists to keep ratings current and meaningful — a player who was Premier-level three years ago but hasn't played since shouldn't still carry a 2000 rating, as this would distort the seedings of active players who have to play them.
There is a 3-month grace period — no decay applies if you've played in the last 3 months. After that, decay applies monthly at graduated rates:
| Inactivity Period | Rate | ~Monthly Loss |
|---|---|---|
| 0 – 3 months | None (grace period) | 0 pts |
| 3 – 9 months | 2 pts / week | ~9 pts/month |
| 9+ months | 3 pts / week | ~13 pts/month |
Decay is calculated monthly and shows as individual entries in your rating history so you can see exactly when and how much was applied.
Yes — two protections apply:
- Global floor: Your rating will never drop below 1100 regardless of how long you're inactive.
- 25% decay cap: Per inactive period, you can lose at most 25% of your division's floor value. This resets when you return and play again.
| Division | Division Floor | Max Decay (25%) | Minimum Rating |
|---|---|---|---|
| Premier League | 2000 | 500 pts | 1500 |
| 1st Division | 1800 | 450 pts | 1350 |
| 2nd Division | 1600 | 400 pts | 1200 |
| 3rd Division | 1500 | 375 pts | 1125 |
| 4th – 7th Division | 1400 – 1100 | 275–350 pts | 1100 (global floor) |
For context: a Premier player would need to be inactive for approximately 3.5 years before hitting the 1500 minimum.
Yes. The moment you play a rated match, the inactivity clock resets. The 25% cap is per inactive period — so each time you return and become inactive again, the cap applies fresh from your rating at that point. Playing regularly is all you need to prevent any decay from applying.
Rating Pool & Fairness
Yes — the system is well-suited for tournament seedings. Because all competitive formats feed a single unified rating pool, and because division bumps calibrate ratings at every division crossing, ratings are meaningfully comparable across the full player population. For the vast majority of tournament entrants who participate in league play and/or tournaments regularly, their ratings reflect genuine competitive ability.
Edge cases — players new to the system, long-returning players, or those who only participate in a single satellite competition — are visible in the data and can be handled with TD discretion where needed.
Rating pool isolation occurs when separate groups of players rarely interact, creating rating "bubbles" that are internally consistent but not comparable across groups. It's a well-known concern in any ELO system.
Our system has multiple structural defences against this:
- Division-anchored starting ratings — ratings begin at values calibrated to real competitive tiers, not arbitrary numbers.
- Single unified pool — all leagues and tournaments feed the same rating table. There are no mechanical silos.
- Open tournaments — regularly mix players from all divisions and clubs in a single draw, creating direct cross-boundary rating exchanges.
- Division bumps — create calibrated bridge points every time a player crosses a division boundary through promotion or relegation.
- Inactivity decay — prevents the pool from inflating due to stale high ratings, keeping the overall distribution honest.
- Universal K-factor — the same formula applies regardless of which format the match was played in.
For pool isolation to be a genuine problem, you'd need a meaningful group of players who exclusively play one satellite competition (e.g., Super Vets League only) and never enter any tournament or CTTT League match. That's a participation pattern issue, not a system design flaw.
Read the full analysis documentGeneral
Click on any player name across the site to open the player modal. Navigate to the ELO History tab to see a full chronological breakdown of every rating change — including match results and inactivity decay entries. Hover over decay entries to see the weekly rate that was applied.
Tournament registrations are listed on the Tournaments page. You need to be logged in to register. Your current club and team info is automatically pulled from your active league registration.
You can reach us through any of the following:
- play@nexus.org.za
- 082 494 3525
- @nexusttc
Or visit us at Vanguard Community Hall, Corner of Zenith Road, Vanguard Estate.