Blog

Every improvement to MatchDayGuru, from the first version to today. Newest first.

A new match header, top scorers and expected points

The top of every match page has been rebuilt: the odds are more compact, the kick-off time is as easy to read as the date, and on phones both teams now sit in one row. Kick-off weather has a new set of icons, including night-time versions.

  • Top scorers: the ten leading goalscorers of the competition, below the league table on each match page.
  • Expected points (xPTS) table on league pages: compare the points each team actually has with the points its chances deserved.
  • Team Comparison: the xG difference and goal difference rows are now highlighted.
  • The site remembers the language you picked.
  • The Guide now explains every section of the site in all four languages.

MatchDayGuru en français

MatchDayGuru is now available in French at /fr/: matches, match pages, league and team pages, the Guide and the other information pages.

  • The matches toolbar wraps more neatly on small screens, so no control ends up alone on a row.
  • The Guide now notes that odds stop updating at kick-off and are removed about a week later.
  • Our information pages now load their text straight away, before the rest of the page.

Spanish and Portuguese, league and team pages, match results

Our biggest update so far:

  • Spanish (/es/) and Brazilian Portuguese (/pt/) versions of the site.
  • League and team pages: every competition has its own page with the league table and an xG table, and every team has one with its season averages; both list upcoming fixtures and recent results.
  • Result pages: once a match is over, its page shows the final score and the actual xG next to the pre-match picture.
  • Past days: the homepage now lets you go back up to seven days.
  • Readable match links such as /match/123-arsenal-vs-chelsea/, and a share image for every match.
  • Bookmaker logos are back, and the contact form is better protected against spam.
  • The match page shows a placeholder of the right size while loading, so the page no longer jumps.

Faster pages everywhere

We spent a full day on speed. Our servers now run in Stockholm, right next to our database, and pages are cached closer to you. Match pages load the league table together with the match and start loading as soon as you hover over a match in the list.

Under the hood we also upgraded our build tools, which makes the site's code smaller.

Written match analysis

Every match page now opens with a short written analysis that picks out what stands out in the numbers, such as a team scoring more or less than its xG, or a head-to-head history that goes against current form. We also fixed several things that slowed the site down on phones.

Cleaner information pages and mobile fixes

  • About, Guide, Contact, Terms and Privacy share the same simple, clean header.
  • On phones, match pages have a close button in the top-right corner.
  • Four layout problems on small screens fixed after a full mobile review.
  • Days without matches now show the matches calendar instead of an old off-season page.

Head-to-head record and Our Story

The head-to-head section now shows the overall record (wins, draws, losses) and averages from the last five meetings. When Home/Away mode is on, the list of meetings follows it too.

We also published Our Story: why we built MatchDayGuru.

Weather, referee and TV channels

Three new blocks on the match page:

  • Kick-off weather forecast for the stadium.
  • Referee with their average cards per match this season.
  • TV channels showing the match.

Missing players now have photos, the bars in Team Comparison point the right way for "lower is better" stats, Most Likely Scores are coloured by outcome, and the homepage loads faster.

New homepage design

The matches list on the homepage has a brand new design: a compact table with bigger form pills and logos, card statistics you can sort and highlight, and odds that always fit.

  • Predicted lineups now show team logos.
  • A certified consent tool now handles cookie choices.
  • Faster loading: fonts no longer block the page and logos are smaller. On desktop our PageSpeed score went from 89 to 99.

Redesigned match page

The match page got a complete redesign with clearer sections, team logos and consistent fonts and colours. We also fixed xG columns that showed wrong values when "Exclude penalties" and Home/Away were combined, and corrected the wins, draws and losses in the league table.

Predicted lineups and three new leagues

The match page now shows predicted lineups on a football pitch, with player photos and formations, plus missing players, the coaches, the venue and the referee.

  • New competitions: Brazil Série A, Liga MX and MLS.
  • Odds are now refreshed every 30 minutes instead of every 2 hours.
  • Clearer page titles and new About and Privacy pages.

Back for the new season

After the summer break, the data feed is running again for the 2026/27 season. Full history from last season is loaded, so the stats for the first matches of the new season are complete.

One design across the whole site

The maroon and gold design now covers the Terms and Contact pages, the match page and the matches toolbar. Small phones get a better header and the Guide has a mobile table of contents.

Faster homepage, more secure backend

Head-to-head numbers on the homepage and match pages now come from our own database instead of many separate requests to our data provider, which makes them load faster and more reliably. We also locked down our internal data jobs and cleaned up a lot of old code.

Redesigned Guide

The Guide has a new layout with a table of contents and a section for every statistic. The date tabs on the homepage got the same new style.

Today's matches on the homepage

The matches list is now the homepage: open matchdayguru.com and today's matches are right there. The header has a new maroon and gold look, and during the off-season the homepage tells you when matches are back.

Odds for European cups, fixed league tables

  • Odds now show for the Champions League, Europa League and Conference League.
  • League tables on match pages are back for every competition, sorted correctly also in leagues split into phases.

One Head-to-Head block

The head-to-head balance and the list of previous meetings are now one block, placed below recent matches, showing up to ten meetings. The Guide explains all the new statistics, and the header lines up with the content on wide screens.

Extended xG data and "Exclude penalties"

  • A new xG Extended Data block on the match page: xG on target, non-penalty xG, open play and set piece xG, xG against and expected points.
  • An Exclude penalties option on the matches list switches the xG columns to non-penalty xG.
  • On phones, a fade at the edge of the matches table shows you can swipe for more columns.
  • Several xG values were being read from the wrong data field and are now correct.

Kick-off times in your time zone

Dates and kick-off times now follow your browser's time zone. We also published our Terms and Conditions, and on days without matches the homepage lists the competitions we cover.

Prediction model

Match pages now include a prediction model: probabilities for the result, both teams to score, over/under goal lines and the most likely scores, from our data provider's machine learning model. The Guide explains how to read it.

More leagues and bookmakers

We updated the list of covered leagues and added more bookmakers with their logos. The odds table has striped rows for easier reading, and your Overall / Home-Away choice is now remembered across pages.

Odds from every bookmaker

The match page now has a full odds table with every bookmaker, the best price for each outcome highlighted and the average at the bottom.

Faster loading and new icons

Pages load faster thanks to caching, smaller images and a self-hosted font. Match statistics have new icons, recent matches show the competition, and the page makes clear that the stats are averages from the last five matches.

League table on the match page

Each match page now shows the full league table with both teams highlighted. It updates every hour.

Compact match page and complete data

The match page moved to a compact layout with team logos in the statistics header and recent form, and xG for each recent match and head-to-head meeting. Search now covers all seven days.

Behind the scenes, new daily checks find and fill in missing match statistics, so averages are built from complete data.

More reliable statistics

Recently finished matches are picked up faster, head-to-head xG no longer shows 0.0 when the value is unknown, and the match statistics are now one clear table. The most recent match in the form strip is underlined.

Contact form and a faster site

You can now reach us through the contact form. Pages load faster, recent form on the match page shows only matches from the same competition, and days without matches still let you move to another date.

The Guide

All the explanations of our statistics moved to their own page: the Guide.

Match pages

Click any match to open its own page: both teams side by side with comparison bars, the odds, each team's recent form and the previous meetings between them.

Highlighted numbers

Standout values in the matches table are now highlighted, so the interesting numbers catch your eye. Corner statistics were corrected, and the site got proper previews when shared on social media.

Head-to-head and Home/Away mode

  • Head-to-head statistics from previous meetings between the two teams.
  • Home/Away mode: switch from all matches to the home team's home matches and the away team's away matches.
  • Odds and xG now update every two hours.

More statistics and a league filter

New columns in the matches table, a league filter next to the calendar and card icons in the headers.

Dark mode

MatchDayGuru now has a dark mode, switched with the toggle in the header. League positions come from real league tables, and missing xG shows N/A instead of 0.0.

League positions and a statistics guide

Each team's league position is shown next to its name, the table header stays visible while you scroll, and the footer explains every abbreviation. Yellow and red card columns got their own colours.

Form column

A new Form column shows each team's last five results at a glance.

Odds in the matches table

The matches table now shows betting odds for every match. The site got a new dark red header, a new logo and instant tooltips on column headers.

Team and league logos

Every match now shows the team and competition logos.

New data provider: Sportmonks

We switched our data source to Sportmonks, which gives us expected goals (xG) and much more detailed statistics.

Matches for the next 7 days

A date selector lets you browse matches for the next seven days, not just today.

xG columns and live data

The table got xG for (xG+), xG against (xG-), xG difference (xGd) and goal difference columns, with tooltips explaining each one. Statistics now come from our own database, updated every day.

The first version

MatchDayGuru started as a "coming soon" page and a first version of the matches table: today's matches with statistics from each team's last five matches. A day later it got filters, a compact table layout and its first logo.