Tennis Scoreboard Graphics: Scorebug, Serve Indicator and Every Score State
Tennis has no match clock, so the tennis scoreboard carries the whole state of the match: points, games, sets and serve.
A tennis scoreboard must show four values at once: the point score in the current game (0, 15, 30, 40, AD, or a raw tiebreak count), the games won in the current set, the sets won so far, and which player is serving. Tennis has no match clock, so nothing else on screen tells a viewer where the match stands. Most sports use scoreboard and scorebug for the same graphic; tennis is the one that builds both, a compact corner scorebug for live state and a full set-by-set scoreboard called at change of ends. This is part of how scoreboard graphics work across every sport. Tennis is the awkward one, because its score is not a number. It is a tree.
What a tennis scoreboard must show
| Element | Why it matters | Source of data |
|---|---|---|
| Player or pair names | Two in singles, four in doubles | Draw sheet, loaded pre-match |
| Point score | 0, 15, 30, 40, AD, or an integer in a tiebreak | Official feed, or the LiveScore app |
| Games in the current set | The only element showing how close a set is to ending | Derived from completed games |
| Sets won | Whether the match is one set or three from finishing | Derived from completed sets |
| Serve indicator | Tennis is unreadable without it | Match state, not a local toggle |
| Set-by-set history | Does not fit the live bug, so tennis needs a full scoreboard as well | Held on the match |
| Tiebreak mode | Changes point display, serving pattern and win condition | Derived at 6-6, or from format rules |
| Match format | Best of three or five, advantage or no-ad, match tiebreak | Competition configuration |
| Challenges remaining | Only where challenges exist; live line calling removes it | Operator or official feed |
The score is the clock: why a flat score field cannot represent tennis
In almost every other sport the bug holds two integers and a timer. Tennis holds a nested structure four levels deep: points inside games, games inside sets, sets inside a match. Each level has its own win condition, and each resets the level below it when it completes.
Consider a player leading 6-4, 3-6, 5-4, 40-30. That line contains two completed sets, a set in progress, a game in progress, and the fact that one point ends the match. A pair of score integers cannot express any of it.
The consequence. The scoreboard must be bound to a score model, not a score number: points, games and sets are separate variables with separate reset rules, and the graphic reads all of them whenever any one changes.
Two rules make the point display conditional rather than merely nested.
- Deuce and advantage. At 40-40 the display becomes "40-40" or "Deuce", then "AD" for whoever wins the next point, and back to deuce if they lose the one after. The point value has no numeric equivalent, so the field has to accept a string.
- No-ad scoring. In no-ad formats, used widely in tour-level doubles and across many ITF competitions, 40-40 is a single deciding point and there is no advantage state at all. The correct display of "40-40" depends on the competition, not on the score.
There is exactly one clock in professional tennis and it is not a match clock: the serve clock, commonly 25 seconds at tour level, for starting the next point. It measures the gap between points and says nothing about who is winning.
Scoring events and what the bug does
With no clock, every visible change on a tennis bug is a scoring event.
| Event | What the bug does |
|---|---|
| Point won | Advances 0 to 15 to 30 to 40. In a tiebreak the counter increments |
| Game won | Points reset, game count increments, serve moves to the other side |
| Set won | Games reset, set count increments, completed set goes to the history |
| Set point, match point | Derived from the score, not an event. Worth an indicator |
| Tiebreak start | Point display switches to raw integers, serving pattern changes with it |
| Match won | Freezes on the final score, hands over to the match summary |
| Retirement, walkover, suspension | A score that will never complete. The bug has to say so |
Tiebreaks and match tiebreaks
A tiebreak is a different game with a different display. At 6-6 the point score stops using 15, 30 and 40 and becomes a straight count to seven, win by two, so a field that showed "40" a moment earlier has to render 7-6, 8-6 and beyond. Serve alternates one-then-two rather than once per game, and ends change every six points.
A match tiebreak is first to ten, win by two, played instead of a deciding set. It is standard in tour-level doubles, common across ITF formats, and all four Grand Slams now settle a final set at 6-6 the same way. The counter has to run past seven without breaking the layout, and the result is written into the set history as a set score.
Serve, challenges and code violations
Tennis has no cards and no player counts. The serve indicator does the work of a possession arrow and a clock combined.
Why the serve indicator has to survive a reload
Broadcast graphics are HTML5 layers rendered in a browser. Encoders restart, instances recover, pages refresh. If serve is a local toggle that flips each time a game completes, a reload at 4-3 in the second set restores a bug that is confidently wrong, and nothing in the visible score reveals it until the next break.
The fix is to hold serve as match state, not as a rendering side effect. Serve is recoverable from the score if you know who served first in the set, but that "if" is the problem: the first server is a fact about the match, not the score. In a tiebreak the one-then-two pattern means serve cannot be derived from point parity at all. Doubles goes deeper again: serving order within a pair is fixed for the set, so the graphic needs the player, not the team.
Challenges and electronic line calling
Where challenges are in use, each player typically has three unsuccessful challenges per set with one more in a tiebreak, and the bug carries a remaining-challenges indicator plus a review state while the replay runs. Where live electronic line calling is deployed, calls are automatic and challenges disappear entirely, so the same template has to be able to hide the element.
Code violations
Conduct is penalised on an escalating scale: warning, point penalty, game penalty, default. The game penalty matters most, because it changes the game score with no point played, so a bug that only increments games on completed points goes wrong.
Layout: best of three, best of five and doubles
Best of three versus best of five. A best-of-three bug needs three set columns. Best of five, used in men's Grand Slam singles, needs five. Design for three and a five-set match overflows or silently drops a set; design for five and a WTA singles match carries two empty columns for two hours. Bind the set columns to the match format so the bug lays itself out at match creation.
Doubles. Doubles is not a variation, it is a different graphic. Four names have to fit where two normally sit, forcing a choice between stacked pair blocks and a combined "SURNAME/SURNAME" line, both of which must survive long names at fixed width. The serve indicator has to point at a player, not a side. And because tour-level doubles typically pairs no-ad scoring with a match tiebreak, it runs the sport's two most conditional rules at once.
Extensions: the full scoreboard and the match summary
Tennis is the only sport in this series needing a persistent full scoreboard as a separate graphic. In a clock sport everything fits in the bug; in tennis, set-by-set history does not. The compact scorebug carries live state, and a larger scoreboard carries the record: both players or pairs, every completed set, tiebreak scores, serve and the format. It is called at change of ends, and it makes a stream watchable for someone who has just joined.
Scorebug, full scoreboard and match summary: three graphics, one set of match data.
The match summary stats worth carrying
- Aces and double faults. Countable, unambiguous, and the two numbers an audience reads first.
- First-serve percentage and first-serve points won. The pair that actually explains a scoreline.
- Break points converted and saved. The highest-leverage number in the sport.
- Winners and unforced errors. Worth a caveat: unlike aces, these are judged by a human statistician, so they are only as consistent as the person recording them.
Each is a timestamped event first and a statistic second, which is what makes stat panels and automated highlight clipping possible from the same source.
How LIGR drives a tennis scoreboard
LIGR runs tennis at scale on the WTA Tour and across the ITF World Tennis Tour with partner Crionet, with automated stream start and manual scoring as a supported path. The tennis graphics set is built and live: scorebug, full scoreboard and match summary.
Graphics are designed in Rive and bound to live match data in Fuse, which is what makes the nested score model workable. Points, games, sets, serve, tiebreak mode and format are variables rather than baked-in artwork, so a best-of-five singles match and a no-ad doubles match run the same published theme with different bindings.
Manual scoring is a first-class path, not a fallback
At the top tier an official data feed exists and LIGR takes it. Across the wider professional calendar, on outside courts and at ITF level, there is frequently no feed at all: the umpire has a scoring device, the tournament has a draw, and that is the extent of the structured data.
LIGR's scoring and data layer treats both as the same problem. Where a feed exists, the graphics are fed from it. Where one does not, an operator scores the match in the LiveScore app. The output is identical either way, and because every event carries a timestamp, the stats and summary graphics work in both modes. A tournament does not need a data rights deal to get broadcast-quality tennis graphics.
Which means the manual path cannot be a degraded one. It has to handle deuce, no-ad, tiebreaks, match tiebreaks, retirements and code violations, and keep serve correct across a reload, because on an outside court there is no second system to check it against.
Stream start is automated against the schedule, so a court comes to air without anyone pressing go, and Game Plans handles the sequencing around the match. Where a human is wanted in the loop, the Control Room is the web interface for calling the scoreboard, firing a stat panel or correcting a score, on any court, from anywhere.
Run tennis graphics on your competition
Scorebug, full scoreboard and match summary, driven by an official feed or by an operator with a phone. Same graphics either way.
Frequently asked questions
What is a tennis scoreboard overlay?
A tennis scoreboard overlay is the live score graphic rendered over a stream or a broadcast, and broadcasters call the same thing a scorebug. It has to show the point score in the current game, the games in the current set, the sets won and which player is serving. Tennis usually runs two of them: a compact scorebug held on screen through the rally, and a full set-by-set scoreboard called at change of ends.
What does a tennis scorebug need to show?
It must show the point score in the current game (0, 15, 30, 40 or AD), the games won in the current set, the sets won so far, and which player or pair is serving. Because tennis has no match clock, those four values are the only things telling a viewer where the match stands.
Why does tennis need a separate full scoreboard graphic?
Because set-by-set history does not fit in a compact live bug. A match can run to five sets, each with a game score and possibly a tiebreak score. The usual split is a small persistent bug carrying live state, plus a larger scoreboard carrying the record.
How does a scorebug display a tiebreak?
At 6-6 in a set the point display stops using 15, 30 and 40 and switches to a straight count to seven, win by two, so the field that showed "40" now renders 7-6 or higher. Serve alternates one-then-two, and ends change every six points.
What is a match tiebreak and how is it shown?
A match tiebreak is a first-to-ten, win-by-two tiebreak played instead of a deciding set. It is standard in tour-level doubles, common across ITF formats, and all four Grand Slams now settle a final set at 6-6 the same way. It is recorded as a set score.
How is 40-40 displayed in no-ad scoring?
In no-ad scoring, 40-40 is a single deciding point and there is no advantage state, so the bug never shows "AD". In advantage scoring the same score becomes deuce, then advantage, and can return to deuce indefinitely. Correct display depends on the competition, not the score.
Can you run tennis graphics without a data feed?
Yes, and across most of the professional calendar you have to. Below the top tier there is often no structured feed, so an operator scores the match in a scoring app and the graphics update from that. With LIGR the output is identical to the feed-driven version.
