
Match Preview Analyst: who's in better form
Previews built from what the teams have actually done
Type "Arsenal vs Chelsea" or "Premier League, Saturday". You get six factors side by side, each with the number behind it, a plain reading of which side the data leans to, and a share card sized for feeds.
What you get for every match
- A factor table - recent form, scoring margin, home and away record, league table, recent meetings, days of rest. Each factor shows both sides' numbers and which way it points.
- A reading - Clear advantage, Slight advantage, or Too close to call - with how many factors agree.
- A facts sheet - the last five results for each side, recent meetings, and what the data does not cover (injuries, line-ups, and in baseball the starting pitchers).
- A 1080x1350 share card - both teams in their colours and one bar per factor pointing to the side it favours. English or Japanese labels.
- A written preview - your agent writes 150-250 words from the data file only: no invented injuries, quotes or history.
Whole matchdays in one command
matchday --league premier-league --date 2026-09-19 builds a folder for every fixture and one summary table.
Coverage
Premier League, Championship, LaLiga, Serie A, Bundesliga, Ligue 1, Eredivisie, Primeira Liga, Scottish Premiership, MLS, Liga MX, J1 League, NBA, WNBA, NFL, MLB and NHL.
How it decides
Weights differ by sport: scoring margin and the table lead in baseball, form and margin in soccer, and rest counts for more in basketball. A factor with no data is left out and the others are re-weighted. Off-season and early-season data is labelled as such on the facts sheet.
Honest limits
- It reads form. It does not forecast scores and never turns the reading into a percentage. Upsets happen, and every card says so.
- For following and talking about sport. It declines requests about putting money on match results.
- Data comes from ESPN's public JSON endpoints, which are not an official API: they can change or stop without notice, and ESPN's terms apply. Use it for personal analysis and your own commentary.
- No logos or badges - team names and colours only.
- Needs Python 3.8+ and an internet connection, plus Pillow for the card. No API key, no account, no personal data.
Free companion
Fixtures Digest (Free), from the same publisher, lists every fixture for the next seven days with each side's last five results and table position.


