Skip to content
GIXI$4.01-0.22(-5.20%)Gix Internet: deliverz.ai Granted Patent in South Korea, Expanding International Navigation IP Protection[7:32:00 AM ET]CNI$125.08+1.02(+0.82%)CN Declares Fourth-Quarter 2026 Dividend[7:31:00 AM ET]CNI$125.08+1.02(+0.82%)CN Delivers Strong Third Quarter Performance[7:30:00 AM ET]ALTUF$0.130.00(0.00%)Altura Energy Provides Further Update on $3 Million Strategic Investment to Expand Helium Production in Arizona[7:30:00 AM ET]ZSQR$3.55-0.17(-4.45%)Z Squared Begins Site Planning and Engineering at Energized Union County Campus in El Dorado, Arkansas Z Squared Inc. (Nasdaq: ZSQR) ("Z Squared" or the "Company") today announced that it has begun site planning and preliminary engineering for its...[7:30:00 AM ET]TDS$34.40+0.48(+1.42%)TDS and Array to release third quarter operating results and host conference call November 6, 2026 Telephone and Data Systems, Inc. (NYSE: TDS) and Array Digital Infrastructure, Inc. (NYSE: AD) will webcast their third quarter operating results...[7:30:00 AM ET]BRVE$19.87-1.32(-6.21%)Braveheart Bio Announces Upcoming Presentations at the American Heart Association Scientific Sessions 2026[7:30:00 AM ET]LVGLF$0.26+0.00(+1.07%)Lake Victoria Gold Advances $5 Million Shareholder Offering to Support Imwelo Development[7:30:00 AM ET]FRT$111.94+0.50(+0.45%)Federal Realty Investment Trust Reports Strong Third Quarter 2026 Results and Guidance Raise Federal Realty Investment Trust (NYSE: FRT) today reported its results for the third quarter ended September 30, 2026. For the three months ended...[7:30:00 AM ET]BRVE$19.87-1.32(-6.21%)Braveheart Bio to Host Webinar – HCM Spotlight: Advancing a Next-Generation Cardiac Myosin Inhibitor – with Key Opinion Leader Discussion on November 6, 2026[7:30:00 AM ET]STLNF$0.09+0.00(+0.33%)Stallion Uranium Announces Strategic Technical Partnership with Axiom Exploration Group and Corporate Update[7:30:00 AM ET]GTES$26.18+0.26(+1.00%)Gates Industrial Reports Third-Quarter 2026 Results Third-Quarter 2026 Financial Summary Third-quarter net sales of $903.6 million, up 5.6% compared to the prior-year period, including a core sales...[7:30:00 AM ET]JKS$8.69+0.46(+5.59%)Jinko Holdings Announces Change of Chief Financial Officer and Appointment of New Director Jinko Holdings Limited ("Jinko Holdings" or the "Company") (NYSE: JKS), today announced that Mr. Mengmeng Li (Pan Li) has resigned as the chief...[7:25:00 AM ET]
Tutorial 4 min read

What the stock news API rate limit counts

Paid Pro has no daily cap. The limit you actually hit is 20 requests per second, shared with MCP.

The stock news API rate limit people trip over is a burst, not a monthly quota. Every account can send 20 requests per second. That budget is shared by every key on the account and by MCP tool calls. Go past it and the API returns HTTP 429 with a Retry-After header. Wait that long, then send the request again. Do not retry in a tight loop.

There is no monthly call pack on MarketNewsAPI, and paid Pro has no daily REST cap. The numbers that do exist are the burst, the Free daily cap, and the trial daily cap. WebSocket messages are not REST calls. A stream that stays open all day does not spend the 20-per-second budget, and it does not spend a daily cap.

Three different caps

Free is 100 REST requests per UTC day. Headlines are delayed 15 minutes. History is the last year. There is no WebSocket and no MCP. When the hundredth counted call is behind you, further counted calls return HTTP 429 with the code daily_limit_reached until 00:00 UTC. The key is not disabled, and nothing is charged.

The 7-day Pro trial is 1,000 REST requests per UTC day. A card is required. Nothing is charged during the trial. The trial includes real-time REST, the WebSocket, MCP, and the full archive. The same 429 and the same UTC reset apply when that thousand is used up. Unless you cancel, the card is billed for Pro when the trial ends. Canceling during the trial returns the account to Free and nothing is billed.

Paid Pro removes the daily cap. Pro is $15 a month, or $162 a year. It is real time, it includes the full archive, and it includes 3 WebSocket connections. The burst of 20 requests per second still applies. A fourth WebSocket connection closes with code 4008. Unlimited WebSocket messages means the messages are not metered. It does not mean you can open more than 3 connections.

Calls to GET /v1/usage and GET /v1/status do not count toward the Free daily cap or the trial daily cap. Use them from a health check. Do not point the health check at GET /v1/news once a second. The response headers on a counted call include X-Plan, X-Daily-Limit, and X-Daily-Remaining. On paid Pro the daily remaining figure is not a quota you are about to exhaust.

One request, then read the header

Send one search. This asks for recent NVDA news, twenty rows, newest first. The key stays in the environment. Do not put it in a browser.

curl -sS -D - "https://api.marketnewsapi.com/v1/news?tickers=NVDA&limit=20" \
  -H "Authorization: Bearer $MARKETNEWSAPI_KEY" -o /tmp/nvda.json
echo
python3 -c "import json; d=json.load(open('/tmp/nvda.json')); print(d['data'][0]['title'], d['meta'].get('next_cursor'))"

Look at X-Daily-Remaining and at the status code before you send the next page. If the status is 429, sleep for Retry-After seconds. If meta.next_cursor is present and you are paging, repeat the same filters and add cursor. Changing filters mid-walk starts a different result set. limit can be 1 to 100. A backfill does not need to run at 20 requests per second. One page, then the next cursor, leaves room for the rest of the account. The paging rules are on the pagination page, and the headers are on the rate limit page.

Try it for 7 days. Signup starts Pro. A card is required. Real-time REST, WebSocket, and MCP, with 1,000 REST requests a day. Paid Pro removes the cap. After that it's $15/month, or Free if you stop.

Start 7-day free trial

The burst is shared

Two services with two keys on the same account still share one burst. A notebook and a production poller can push each other into 429 if both run flat out. Give the poller its own pace. Ten requests a second is already a lot for news search. The cap is there so one loop cannot pin the process.

MCP counts too. A Cursor or Claude session that calls search_news in a loop spends the same 20 per second. WebSocket messages do not. If the product is "tell me when there is news", open wss://ws.marketnewsapi.com/v1/stream on Pro and subscribe to ticker:NVDA or type:press_release. That is one connection, not a poll. The immediate socket can deliver a row whose summary is still null. The summaries socket waits. Either way the message is not a REST call. Channel rules are in the WebSocket docs.

A 429 from the burst and a 429 from the daily cap are different problems. The burst one clears in a second or two, which is what Retry-After is for. The daily one clears at 00:00 UTC, or when you move the account to paid Pro. Subscribing lifts the daily cap immediately. It does not lift the burst. The usage page shows what the key has done today. GET /v1/usage returns the same idea to a program, and that call itself is not counted.

What this cap leaves alone

The $15 plan cannot be used commercially. A higher burst, a product you sell, client work, or redistribution of the feed is a separate conversation. Email [email protected]. Do not assume a commercial license is a larger number on the same checkout. There is no public self-serve price for it.

The limit is also not a promise about freshness. Pro, including the trial, receives articles as they are ingested. Free is delayed 15 minutes. Sources are polled every second, including nights and weekends. That polling is on our side. Your client should not poll every second to imitate it. Signup is at signup. The plan table is on pricing.

Frequently asked questions

Does MarketNewsAPI have a monthly request quota?
Paid Pro does not. There is no monthly call pack and no overage fee on the request count. The cap that remains is 20 requests per second, shared by every key on the account and by MCP tool calls. Free is 100 REST requests per UTC day. The 7-day trial is 1,000 REST requests per UTC day. WebSocket messages are not counted as REST calls. A 429 from the burst includes Retry-After. A 429 from the daily cap uses the code daily_limit_reached and clears at 00:00 UTC.
Do usage and status count toward the daily cap?
No. GET /v1/usage and GET /v1/status do not count toward the Free cap or the trial cap. Point a health check at one of those. A health check that calls GET /v1/news once a second will spend the burst and, on Free or on the trial, the daily number. The counted responses include X-Daily-Remaining so a client can slow down before the cap, not only after the 429.
Does the WebSocket use the same rate limit?
Messages on the WebSocket are not REST calls, so they do not spend the daily cap and they are not metered as requests per second. Pro still allows only 3 concurrent connections. A fourth closes with code 4008. Opening the socket is the right fix for a loop that was polling for new headlines. The 20 per second burst still applies to REST and to MCP tool calls on that same account.
Can I use the Pro plan commercially?
No. The Pro plan cannot be used for commercial work. A product you sell, work you do for a client, or redistribution of the feed needs a custom plan and a license. Email [email protected].

Real-time stock news for $15 a month.

Start a 7-day Pro trial. A card is required. REST, WebSocket, and MCP are included, with 1,000 REST requests a day. You won't be charged during the trial. Unless you cancel, the card is billed for Pro when it ends.