Sports Apps Grew Heavy. The Analytics Behind Them Got Complicated
Sports technology is being sold as a data story, but a run through the public record this week shows the harder engineering sits in the pipes: Apple's Sports app strips out everything but scores, Adaca rebuilt the old Google Analytics on Cloudflare Workers, and a teenager found 17 trillion rows in a Microsoft database after a JWT check was skipped.

Sports technology is being sold as a data story. The pitches arriving in newsrooms this month talk about AI in sports markets, fan growth dashboards and performance analytics. That is the marketing layer. The engineering layer looks different, and it is easier to inspect, because most of it ships as open source, bug bounty write-ups or product notes.
Consider the most visible consumer example. Slate published a piece in June arguing that Apple's Sports app is the best app the company has shipped in years precisely because it does almost nothing. The app, simply named "Sports," carries no news headlines, no streaming guides and almost no advertising. Slate's reviewer notes it shows team names and logos, records, game times and scores, plus a standings page. Betting odds appear on the scoreboard, but a settings toggle removes them permanently.
That is the whole product. The interesting part for anyone who works in sports data is why it feels fast: the app is narrow by design, so the data pipeline behind it never has to reconcile feeds, editorial content and video inventory in the same view.
The scoreboard is the easy part
Slate's writer describes the customization as perfect: you pick leagues and teams, they appear on a homepage and in a sidebar, and their scores can surface as Live Activities on the lock screen. Coverage extends well past the World Cup to MLS, the NWSL and roughly 30 other soccer leagues, plus men's and women's tennis and the LPGA Tour. Clicking a game opens a basic box score, leaderboard or roster.
The app was announced in the winter of 2024. Slate quotes an Apple executive laying out the premise at the time: "We created Apple Sports to give sports fans what they want, an app that delivers incredibly fast access to scores and stats." No agentic framing, no promises about bringing fans closer to the action.
There is a useful lesson buried in that restraint. Most sports properties now carry years of accumulated features. Slate's reviewer singles out Major League Baseball's official app, once a favorite, for surrounding scores and video with window dressing, and ESPN's app for pushing its live TV offering and a TikTok-style feed called "Verts" above the score section. The friction is not a data problem. It is a product problem dressed up as a data problem.
Which is where the plumbing gets interesting, and where the public record this month is unusually rich.
On 8 September, a software consultancy called Adaca published Adaca Analytics, a self-hosted dashboard layer for Google Analytics 4 and BigQuery, running on Cloudflare Workers. According to the project's GitHub README, daily rollups from the GA4 Data API or a BigQuery export land in a D1 database the operator owns, while realtime data stays live on Google. The repository ships six dashboards and a four-step builder for custom ones.
The details matter more than the pitch. Every number in the dashboard opens into a detail page with its own trend and breakdowns, precomputed so they load in one round trip. There is one filter for a whole dashboard, saved segments, and read-only share links that can pin a filter. Comparisons run against the previous period, last year, or any window. Setup requires creating a Google service account with Viewer access on a GA4 property, downloading its JSON key, then deploying to Cloudflare, which forks the repository and provisions D1 and KV. The README is explicit that there is no sign-in, and tells operators to put Cloudflare Access or the built-in Basic Auth in front of the deployment. The project is MIT licensed.
Read that against the sports context and the shape of the problem becomes clear. A club, league or broadcaster that wants its own analytics view is now assembling it from commodity parts: a worker runtime, a small database, a service account with read-only access, and a cron job. The expensive part is not the query engine. It is the access model and the operational discipline.
When the token check is missing
Tom's Hardware reported on 28 September that a teenager using the handle Faav found an unauthenticated endpoint inside Microsoft's internal Titan analytics platform. The write-up says a bot he built, called Antares, found an endpoint URL that returned an error demanding a VPN. Antares then enumerated subdomains and turned up one on an Azure Cloud host, along with a Swagger/OpenAPI file listing four routes. Three required Azure Active Directory authentication. One did not, and it was named /v2/Query. It accepted raw SQL.
According to the report, Faav used the Wayback Machine to find a 2023 version of a login page carrying an Apache Superset configuration file that described the database schema, including 56 table definitions. The endpoint rejected his queries for lack of a JWT, so he ran Antares against it for 10 days without success. Then he noticed the server's responses implied the token's digital signature was not being checked, presented a token claiming administrator access, and was let in. A single SHOW DATABASES returned 25,000 records of employee data, plus organization records, dashboards and charts.
Digging further, he found a data source for Bing analytics. Tallying rows across tables, Tom's Hardware reports, he counted access to 17 trillion records in total. He reported the issue to Microsoft's bug bounty program and was awarded $5,000. In his blog post he wrote: "AI and human intuition compounded here. Antares did ten days of work I didn't have to [...] Its persistence, plus one human hunch, is what made this find possible."
Two things are worth separating here. The first is the vulnerability itself: an endpoint that accepted raw SQL and did not verify a token signature. The second is the discovery method. The brute-force subdomain enumeration was automated. The insight that the signature check was missing, and that a forged administrator claim would therefore work, was not.
Starburst published an analysis on 11 September that frames the same tension from the architecture side. The post walks through two ways to feed an enterprise AI agent: extract the data and hand it over, or give the agent direct database access and let it write its own queries. The first option, which the author labels "option 0," gets expensive fast because agents that charge per data item processed cannot be handed terabytes. The author calls it impractical outside unusual circumstances.
The second option lets the database engine do what it is optimized for while the agent sends successive or parallel requests. It also notes a real risk: agents can be far more demanding than human users and can overwhelm a database with speculative queries while refining their focus. The post's grocery-store example is a good illustration of why the question is hard. Asking whether a promotion on eggs was profitable requires transaction data from one system, loyalty and demographic data from another, and a chain of follow-up questions about basket composition and repeat visits.
That is the same shape as the sports analytics problem. Ticketing, streaming, merchandise, app telemetry and venue data sit in different systems, and the queries that matter span all of them. The Starburst piece argues modern database systems are increasingly able to handle agentic workloads, but that agents will not match the optimization of long-tuned database engines on terabytes of structured data for some time.
The quiet tools are the ones to watch
Away from the enterprise tier, two smaller projects show where the tooling is heading. Plainoldanalytics, posted to Hacker News on 13 September, is a self-hosted analytics middleware for Go applications. Its README describes it as similar in spirit to Umami, Plausible or PostHog, but embedded in the app itself. The core package is storage-agnostic, so importing it never pulls in a backend; operators pick a storage package, such as DuckDB or an in-memory store, or implement the interface themselves. Traffic flushes to disk roughly once a second, and the middleware records path parameters unless a route is wrapped to record the literal path instead. Adapters exist for gin and chi.
DataZen, posted on 29 August, goes the other way: a local-first desktop client for cross-database work. Its site lists PostgreSQL, MySQL, SQLite and Redis as built in, with optional drivers for MongoDB, ClickHouse, DuckDB and SQL Server. It offers natural-language SQL, one-click error diagnosis, EXPLAIN visualization, YAML workflows and a built-in MCP server that exposes queries, schema inspection and workflows as tools for agents such as Claude Desktop, Cursor and Cline. The site states that credentials are encrypted with AES-256-GCM and stored in the OS keychain, that only schema and query context are sent to the AI provider, and that the full source is available under GPLv3. It also notes no account is required and no cloud database service is operated.
Put the four together and a pattern emerges that the market forecasts tend to flatten. The consumer-facing layer is consolidating around radical simplicity, as Apple's Sports app shows. The layer underneath is fragmenting into small, auditable, self-hosted components that operators can inspect and control. And the security record, as the Microsoft case shows, depends less on whether an organization bought an analytics platform than on whether it checked the signature on a token.
None of that shows up in a market sizing chart. It does show up the moment a deployment goes wrong.
Sources
6- 01We rebuilt the old Google Analytics on top of GA4's dataEN
- 02Teenager hacks open Microsoft database with 17 trillion total rows and 25,000 user accountsEN
- 03Apple Made a Sports App That Does Almost Nothing. It's IncredibleEN
- 04Show HN: DataZen – a local-first client for cross-database workflowsEN
- 05An Analysis of Two Architectures for Agentic Data AnalysisEN
- 06Show HN: Plainoldanalytics: Analytics Middlware for GoEN
All figures and quotations in this text come from the sources listed below.
Content prepared by the editorial team with AI assistance.
Comments
0- No comments yet — be the first.