# Real-time data has a delay: weather, stock quotes and sports scores

Search and Fetch desk. A ZeroClick publication (https://searchandfetch.com/about/). Published 2026-10-20.
Format: Explainer. Topic: Weather, sports and events (https://searchandfetch.com/topics/weather-sports-events/).
Canonical: https://searchandfetch.com/articles/how-real-time-is-real-time-data/

Real-time is a claim about delay, and every feed carries one. National Weather Service observations can reach its API up to 20 minutes late after quality control. Exchanges set the line between real-time and delayed stock data at 15 minutes, and some give their delayed feeds away free. A sports push feed that promises sub-second scores stamps them with its own send time, not the moment of the goal. An agent that reports the timestamp beside the fact tells its reader more than one that calls the answer live.

## What does real-time mean in a data contract?

It means faster than a threshold someone wrote down, and that threshold can move by orders of magnitude. Under the [IEX fee schedule](https://www.iex.io/resources/trading/fee-schedule), Real-Time is market data used less than 15 minutes after the exchange made it available. Delayed is anything at least 15 minutes old.

The same exchange used to draw that line at 15 milliseconds. [Its rule filing, published by the SEC](https://www.sec.gov/files/rules/sro/iex/2025/34-102295.pdf), moved it to 15 minutes, with the change planned to start on 1 February 2025. Fifteen minutes is 900,000 milliseconds, so the line moved by a factor of 60,000, for one word on one exchange.

So the useful question is never whether a feed is real-time. It is how old an answer is when the agent reads it, and where the feed says so.

## How old is a National Weather Service observation?

It is older than the moment you fetch it, and the one we logged was older than the documented delay. The [NWS API documentation](https://www.weather.gov/documentation/services-web-api) warns that observations can arrive up to 20 minutes late from MADIS, the upstream source, while they pass quality control. It also says every time the API generates is in ISO-8601.

We fetched the latest observation for Washington Reagan National Airport, station KDCA, at 22:26 UTC on 19 October 2026, and the call cost nothing. The response carried its own clock:

```json
"stationName": "Washington/Reagan National Airport, DC",
"timestamp": "2026-10-19T21:35:00+00:00",
"textDescription": "Clear",
```

The observation was taken at 21:35 UTC, so it was 51 minutes old when it reached us. The documented quality-control delay is up to about 20 minutes; the gap we saw was 51. An agent that told its reader it was clear and 19 °C at Reagan National right now would have been describing the sky from nearly an hour earlier.

## How fresh is an NWS forecast?

A forecast is as fresh as its headers say. The NWS designed the API to expire content according to the information's life cycle. The [general questions page for the API](https://weather-gov.github.io/api/general-faqs) says each response carries a Cache-Control header saying how long to keep it and a Last-Modified header for checking whether it has changed. Store those with the forecast, not just the time the agent happened to ask.

Three habits follow. Do not bust the cache with random query parameters, because the API answers unrecognised parameters with a 400. Since January 2026 the forecast endpoints drop periods that have already passed, so a response no longer opens with hours that are over. You can cache the lookup that maps a coordinate to a forecast grid, but check it again periodically, because the office and grid for a location can occasionally change.

## How delayed are free stock quotes?

Fifteen minutes is the standard line, and some data waits until midnight. The [CTA delayed data policy](https://www.ctaplan.com/publicdocs/ctaplan/Policy_Delayed_Market_Data.pdf) covers Network A and Network B trade and quote data; delayed data for Nasdaq-listed securities falls under Nasdaq's own separate policies. It sets the delay period at 15 minutes from when the markets first release the information. [MIAX](https://www.miaxglobal.com/sites/default/files/job-files/MIAX_Exchange_Group_Market_Data_Policies_01292024.pdf) uses the same 15-minute interval for its Pearl Equities top-of-market feed, but treats its options top-of-market data as delayed only after midnight Eastern.

Crossing the line is where the cost sits. IEX gives its delayed TOPS, DEEP and DEEP+ feeds away free and charges $2,500 a month for real-time DEEP. Under the CTA policy, delayed information carries fewer fees and lighter contract terms, and no display unit charges.

The exchanges also say how to label delayed data. The CTA policy requires every display of delayed data to state that it is delayed. It accepts "All Prices Delayed" only when the label comes with a time stamp of the trade. That is the practice this piece argues for, set by the people who sell the data.

One more distinction matters to agents. MIAX defines non-display use as any use other than display, including use by a machine with no person looking at it. IEX lists investment analysis and automated trading among its non-display uses. Our inference is that an agent reading a real-time feed may fall on the non-display side, which exchanges price separately, so read the feed's terms before assuming the display price applies.

## How quickly do sports scores arrive?

Scores can arrive in under a second, but the timestamp measures the vendor, not the game. [SportsAPI Pro's WebSocket documentation](https://docs.sportsapipro.com/api-reference/football-v2/websocket) says scores and status changes are pushed sub-second. Goals and cards follow about 300 milliseconds after a match update, with a 15-second safety-net poll. Live odds refresh about every 30 seconds unless a match event triggers a faster update.

The feed's timestamp is the vendor's own fetch or emit time in epoch milliseconds. The documentation says plainly that it is not a bookmaker-side time. It tells an agent how old the message is, not how old the goal is.

Silence is the harder case. Frames arrive only when something changes, so a live match can go quiet for a minute or more, and the documentation says some lower-tier matches receive no frames at all. It advises checking the REST list of live matches every 30 to 60 seconds and resubscribing when a live match has sent nothing for about 90 seconds. An agent that follows that advice can still go a minute and a half without knowing whether a quiet match is quiet or stuck.

## What does each feed say about its own delay?

Most of these feeds write the delay down. Here they are in one place.

| Feed | Documented delay | How the age is marked |
|---|---|---|
| NWS station observations | Up to 20 minutes from MADIS for quality control | ISO-8601 `timestamp` on each observation |
| NWS forecasts | No fixed delay; each response says how long to cache it | `Cache-Control` and `Last-Modified` headers |
| CTA and CQ plan trades and quotes | 15 minutes after first made available | Delay statement on the display; a general label needs the trade time stamp |
| MIAX Pearl Equities top of market | 15 minutes | Delay message on every display |
| MIAX Options top of market | Until midnight Eastern | Delay message on every display |
| SportsAPI Pro live scores | Sub-second push | `timestamp`: vendor emit time, epoch ms |
| SportsAPI Pro match incidents | About 300 ms after an update; 15 s safety-net poll | Vendor `timestamp` |
| SportsAPI Pro live odds | About 300 ms after a match event, otherwise about 30 s | Vendor `timestamp`; no bookmaker-side time |

## How should an agent tell the reader how old a fact is?

Carry three times, not one: when the fact was true, when the source sent it, and when the agent fetched it. Report the age as the gap between the first and the last, in words the reader can use, such as observed at Reagan National 51 minutes before the fetch. For a delayed quote, give the delay and the trade time. For a score, give the vendor's last frame and say whose clock it is.

A stated delay or a timestamp tells the reader something they can use. The word live doesn't.

Start with the feeds your agent already calls. For each one, find the timestamp field and the delay the documentation names, then check whether they agree. Our KDCA fetch shows they need not.

## Frequently asked questions

### How delayed are free stock quotes?
Under the CTA plans and for MIAX Pearl Equities top-of-market data, quotes count as delayed 15 minutes after they are first made available, while MIAX treats its options top-of-market data as delayed only after midnight Eastern. Some delayed feeds cost nothing: IEX gives its delayed TOPS, DEEP and DEEP+ feeds away free.

### What is the difference between real-time and delayed market data?
At IEX, real-time means data used less than 15 minutes after the exchange made it available, and delayed means at least 15 minutes, a line the exchange moved from 15 milliseconds in a rule change planned to start in February 2025. IEX charges monthly fees for its real-time feeds and none for its delayed ones, and exchange rules require displays of delayed data to say so.

### How fresh are National Weather Service observations?
The NWS says observations can reach its API up to 20 minutes late while MADIS runs quality control, and each carries an ISO-8601 timestamp of when it was taken. The latest KDCA observation we fetched on 19 October 2026 was 51 minutes old.

### Is a real-time sports scores API instant?
SportsAPI Pro documents sub-second pushes for scores, but its timestamp is the vendor's send time rather than the moment of play. Quiet or uncovered matches can also send nothing for long stretches, so pair a push feed with a periodic check of which matches are live.

### Do I need an API key for the NWS API?
No. The API is free and asks only for a User-Agent header that identifies your application, ideally with contact details, and a request without one can get a 403. The NWS says an API key will replace the User-Agent requirement in the future.
