How We Work

Data Methodology

Transparent about where our data comes from, how often it updates, and what happens when things go wrong. No black boxes.

300+

D1 Baseball Programs

30

MLB Teams

32

NFL Teams

30

NBA Teams

<100ms

Avg Response Time

99.9%

Uptime Target

Data Sources

We aggregate from multiple official and validated third-party sources. Each source is monitored for uptime and data quality.

MLB Stats API

99.9% reliable

Official Major League Baseball data feed via Highlightly Pro

Refresh Rate:15-30 seconds during live games
Coverage:Real-time scores, play-by-play, box scores, rosters, player stats

ESPN API

99.5% reliable

Live scores and standings across major sports leagues

Refresh Rate:30 seconds for live games, 5 minutes otherwise
Coverage:MLB, NFL, NBA, NCAA scores, standings, and schedules

NCAA Official Sources

98% reliable

Direct feeds from conference and NCAA portals

Refresh Rate:1-5 minutes depending on source
Coverage:D1 baseball, football, basketball standings and rankings

D1Baseball & On3

97% reliable

Transfer portal tracking and recruiting data

Refresh Rate:Real-time via webhooks when available
Coverage:Portal entries, commitments, withdrawals, NIL valuations

Refresh Rates

Different data types update at different intervals based on how frequently the underlying source changes.

ContextRefresh Rate
Live MLB/NFL/NBA games15-30 seconds
Live college games30-60 seconds
Standings & rankings5-15 minutes
Transfer portal updatesReal-time (webhook)
Player stats & rosters1-4 hours
Historical dataDaily batch

Our Data Principles

The rules we follow when collecting, validating, and displaying data.

🎯

Accuracy Over Speed

We validate data before displaying it. A 30-second delay beats showing wrong information. Every API response is checked for schema consistency before reaching your screen.

📊

Source Transparency

Every data point includes its source and timestamp. Look for the "Data Source" badge at the bottom of any stats section. You always know where the numbers come from.

🔄

Graceful Degradation

When a primary source fails, we fall back to cached data with a clear "stale data" indicator. You never see a blank screen—you see the last known good data with proper context.

âš¡

Edge-First Architecture

Built on Cloudflare Workers with global edge caching. Data is served from the closest edge node to you, typically under 100ms response time anywhere in the world.

When Things Go Wrong

APIs fail. Networks hiccup. Here's how we handle it.

Stale Data Badge

When data is older than expected, we show a yellow badge with the last update time.

Unavailable State

When a source is completely down, we show a clear error with retry option.

Auto-Retry

Failed requests automatically retry with exponential backoff. Most issues resolve in seconds.

Questions about our data?

We're transparent about how we work. If you spot an issue or have questions about a specific data point, let us know.