Let’s talk

MyFootballFacts

Rescuing a football mega-site.

MyFootballFacts holds a vast archive of football statistics, trivia and history: more than 45,000 published pages. Its size had broken the old navigation, so we restructured it, moved it onto our own servers and made it fast again.

Client
MyFootballFacts
When
2025–26
What we did
Data migration · Development · Design · SEO · Hosting & performance

Let’s talk about yours Visit the site (opens in a new tab)

The MyFootballFacts website

Stats. Stories. Passion.

The short version.

  1. 01

    The problem

    So much content that the legacy navigation had failed, leaving a treasure trove of data hard to find, and a site that struggled under load.

  2. 02

    What we did

    Restructured everything into logical sections, rebuilt the site, then migrated it onto our own servers and tuned it for scale.

  3. 03

    The result

    45,399 published pages, organised, findable and served quickly, with nothing lost along the way.

The size of it.

This isn’t a blog with some stats. It’s 20,378 match pages, 15,291 player pages, 289 teams, 239 venues and 58 seasons across eight competitions, from the Premier League and La Liga to the SPL, MLS and the World Cup, plus more than 9,000 articles. Every one of them has to be findable, fast and correctly linked to the others.

Moving house.

In September 2026 we moved the whole site onto our own servers, behind Bunny’s CDN. Every contact-form submission came across, and we backfilled 91,318 image files with zero errors. Nothing was lost in transit.

Making it fast under pressure.

Big sites attract a lot of crawlers, and not all of them are polite. Under load, pages were taking 11 to 19 seconds to generate. We tracked down the bottleneck, fixed it without taking the site down, and generation time fell to 2.6 to 3.8 seconds. Then we reined in the greediest crawlers, while leaving Google and Bing alone.

Keeping it serving.

Pages are served from the edge, close to the visitor, and if the server is ever slow, visitors keep getting pages while it catches up.

The build.

  1. 01Export & audit
  2. 02Restructure the archive
  3. 03Responsive rebuild
  4. 04Migration to our servers
  5. 05Performance tuning
  6. 06Crawler management
  7. 07Ongoing SEO

Under the bonnet

  • WordPress
  • PHP
  • MySQL
  • Bunny CDN
  • Our own servers

The receipts.

Real numbers. We counted.

  • 45,399published pages
  • 20,378match pages
  • 15,291player pages
  • 8competitions, 289 teams and 239 venues
  • 19s → 3.8sslowest page generation under load, before and after tuning
  • 91,318image files migrated, zero errors

Migration without losses

Every table, stat and trivia point moved across and re-organised, then the whole site moved servers with every form submission and image intact.

Built for discovery

A mobile-first design and navigation that gets you from a season to a match to a player in a few clicks, across more than 45,000 pages.

Scale is a hosting problem too

Past a certain size, how a site is served matters as much as how it’s built. How it’s tuned, cached and protected is what keeps a site this big quick.

The people behind it.

  • Barrie Moran Founder / Chief Instigator
  • Ric Development
  • Cameron Design
  • Ailsa Marketing Manager
Meet the whole team

Got something like this in mind?

Good. We’re in.

Let’s talk about yours