A final score is one of the cleanest possible automation targets — the data is structured, the "is this worth posting" check is simple (did the game actually end), and the value to a sports-focused audience of getting the result out immediately is real and measurable.
The node chain
Trigger — a timer polling around when games typically end, or a tighter interval during an active game window (see Trigger timing recipes).
HTTP Request — a sports data source returning game status and score.
If node — the check that matters most here: only continue when the game's status is actually final, not in-progress. A sports API's response typically distinguishes these directly (a status field like "final" vs. "live"); gate on it explicitly rather than assuming a score value alone means the game is over.
Custom Agent (optional but recommended) — write a one-line take on the result: the standout play, a surprising margin, a streak continuing or ending. This is what turns a bare score into something worth following rather than a number a sports app already showed faster.
Apply Template — bind the final score, team names, and (if included) the AI's take into a recap-format template.
Post — publish. For genuinely fast-turnaround sports content, review manually at first (see the pre-launch checklist) before trusting a tight timer.
The one mistake this pattern exists to prevent
Polling a live score feed without a completion check produces exactly the wrong outcome for this format: a "final score" post while the game is still going, which is both wrong and (for anyone watching) an obvious tell that the account didn't actually check. The If node's job is entirely to prevent this — it's the single highest-value piece of this whole workflow.
Handling a full slate of games
Most sports data sources return every game in a league or set at once, not one at a time — filtering to just the finished ones and letting the Apply Template node's per-item fan-out handle each result as its own post means one workflow covers an entire day's slate rather than needing one workflow per game.
Making the recap actually worth reading
The raw score is the baseline; what separates an automated sports account worth following from one that's just repeating what a score ticker already shows is the same thing that separates good and bad human sports writing — a specific, opinionated take rather than a neutral recitation. A well-prompted Custom Agent node can supply exactly that, as long as the prompt asks for an actual angle ("the moment that decided this game") rather than a generic summary.
Timing this against the actual sport
Different sports finish on very different schedules — some in a tight window, others sprawled across a full day or more. Match your polling interval to the sport, not a generic default; a workflow covering a fast-turnaround format benefits from tighter polling right around typical end times, while a slower-paced sport can poll less frequently without missing anything.