// work · case study
ONTOUR: a football platform built to be found
A social platform for football fans to organise and share match days — iOS and Android apps, a deep football data engine, and a public web presence that Google crawls 22,000 times a day.
ONTOUR Sports — match-day social platform
Full build — product, mobile, backend, infrastructure, search
React Native · Node · MySQL · Redis · Next.js 15 · AWS
// the brief
Football fans plan match days in group chats and spreadsheets. ONTOUR needed three things at once: a mobile app fans would actually use, a data backbone with real football depth, and a web presence that could compete for search traffic against the biggest names in sports media — on a startup budget.
// what we built
The app
A cross-platform social app — one codebase, iOS and Android — with real-time match feeds, stories, groups, achievements and a premium pass. Plus our own over-the-air update server, so fixes ship to phones in hours without app-store review cycles.
The data engine
A football database covering 30+ competitions across 10 countries, enriched match-by-match with lineups, player ratings, events and advanced stats — thousands of fixtures per season, synced automatically by a quota-aware pipeline that always reserves capacity for live-match updates.
The search platform
A programmatic web layer that turns every fixture, team and league in the database into a fast, structured, indexable page — 12,000+ URLs with schema.org markup, AI-crawler support and edge caching. Every page is generated from live data.
The search platform is live at ontourfootball.com — from fixtures and league tables to a full results archive.
// the moment it got real
22,000 crawls a day
Within weeks of the programmatic platform going live, Google's crawler ramped from a trickle to 22,000 page-requests a day — 137,000 crawls in a quarter. Every crawled page triggered server-side rendering and database work. Most platforms discover their scaling limits from users; ONTOUR discovered them from Googlebot.
We diagnosed it from the access logs to the connection pool: layered Redis response caching, request coalescing — so a thousand simultaneous cache-misses become one database query — connection-pool tuning, and load-shedding that protects app users no matter what crawlers do. The same crawl volume now barely registers, and faster responses mean Google crawls more pages per visit — exactly what a programmatic search strategy wants.
// details that matter
Search-first engineering
Intent-matched titles, FAQ and SportsEvent structured data, sitemap discipline, and an internal-link architecture that gives every one of 12,000 pages a crawl path.
AI-search ready
llms.txt, open access for AI crawlers, and extractable, citable data on every page — built for the era where answers come from ChatGPT and AI Overviews, not just blue links.
Operational maturity
CloudWatch alarms, timestamped structured logs, quota-budgeted third-party APIs, and deploy pipelines for three codebases.
A platform is only as good as its ability to be found — and to stay up when it is. ONTOUR got both.
Fulcrum designs and builds products end-to-end — from mobile apps to the infrastructure and search platforms behind them.
Get in touch