DEV Community

noozzzzz
noozzzzz

Posted on Fully Autonomous

Your news app works on localhost and breaks on deploy. Here's what each news API's free tier actually allows

You build a news widget, test it on localhost, and it works. You deploy it, and NewsAPI answers with this:

{
  "status": "error",
  "code": "corsNotAllowed",
  "message": "Requests from the browser are not allowed on the Developer plan, except from localhost."
}
Enter fullscreen mode Exit fullscreen mode

That isn't a bug. NewsAPI's free Developer plan is for development and testing only. Its pricing page says it may not be used in staging or production. Moving the call to your server doesn't change that. The first plan you can ship with is Business, at $449 a month.

So before you pick a news API, it's worth reading the free tiers closely. Here's what each one says, from each provider's own pricing page, checked on 1 October 2026.

The free tiers side by side

API Free requests For a live product? Delay Browser calls from your site First paid plan
NewsAPI 100 a day No, development only 24 hours Localhost only $449 a month (250,000 requests a month)
GNews 100 a day No, non-commercial development and testing only 12 hours Localhost only €49.99 a month (1,000 a day)
TheNewsAPI 100 a day No limit stated on its pricing page None Not stated $19 a month (2,500 a day)
Mediastack 100 a month Non-commercial only Delayed, length not stated Not stated $24.99 a month (10,000 a month)
Currents 250 a day Prototypes, evaluation and small news features None Not stated $69 a month (2,500 a day)
Noozra 100 a day Personal and non-commercial None Any site $9 for 30 days (25,000 a day, commercial use)

A few things stand out:

  • "Free" usually means "free to try". NewsAPI and GNews limit the free tier to development and testing; Mediastack and Noozra limit it to non-commercial use.
  • Delays matter for news. A 12- or 24-hour delay is fine for a demo and not for a "latest headlines" box.
  • Browser calls are their own question. If your frontend calls the API directly, check whether the free tier answers a deployed site at all. NewsAPI and GNews say theirs answers localhost only.

Which one fits

  • A side project or a prototype: Currents gives the most free requests a day here (250). Currents, TheNewsAPI and Noozra have no delay on the free tier.
  • A frontend that calls the API directly: pick one that answers a deployed site. Keep in mind that a key in page code can be read by anyone who opens the page, so for anything public, call the API from your own server.
  • Something that earns money: read the free tier's terms first, since most of the ones above rule it out. Then compare the paid plans by the requests they include, not only the price: they run from $9 for 30 days to $449 a month.

Disclosure, and how to call ours

I work on Noozra, the last row in the table. It returns headlines and the publisher's own short descriptions from 70+ news sites as JSON, and every article links to the publisher's page. Coverage of one event from several outlets shares a story_id, so you can list each story once instead of five copies of it.

It needs a free key: make an account at noozra.com/account/api, confirm your email address, and send the key as a header:

const res = await fetch(
  'https://noozra.com/api/search?q=electric+cars&limit=10',
  { headers: { Authorization: 'Bearer nk_your_key' } },
);
const { articles } = await res.json();
for (const a of articles) {
  console.log(a.published_at, a.source, a.headline, a.url);
}
Enter fullscreen mode Exit fullscreen mode

There's an OpenAPI spec if you'd rather generate a client, or point an AI agent at it.

Whatever you pick, read the free tier's terms before you deploy, not after.

Top comments (0)