A free fantasy football API

Quick answer: GridIron Data has a free plan: 50 requests a month, 10 a minute, and no credit card. It includes PPR projections, 2020–2026 actuals, deviations, snap share, matchups and player news. Sign up, confirm your email, and copy the key from your dashboard.

Price
$0
Requests per month
50
Per minute
10
Credit card
Not needed

How do I get a free key?

  1. Open the signup page and leave the plan on Free.
  2. Enter your name, email and a password.
  3. Type the code we email you.
  4. Your key appears on the dashboard. We also email it to you.

That's it. There is no card, no trial end date and no sales call.

What is included for free?

FeatureFreeBasic ($5)Pro ($29)
Projections, actuals, deviationsYesYesYes
Snap share, matchups, newsYesYesYes
Requests50 per month5,000 per month50,000 per month
Rate limit10 per minute30 per minute100 per minute
Injury changes feedNoNoYes

Is 50 requests a month enough?

It is enough to try every endpoint and build a prototype. A start/sit check for a full roster takes about 4 to 6 requests, one projections call per position, and looking up a few players' news adds a handful more. Save the responses while you build and 50 goes a long way.

It is not enough to run a league every week. A Tuesday board plus a Sunday re-check after inactives is 8 to 16 requests a week, roughly 35 to 70 a month, before any player lookups. A draft board that loads every player at once is about 18 requests on its own. Once you run something on a schedule, a bot for a league or a public site, that is what Basic is for: 5,000 requests a month for $5.

What happens at the monthly cap?

Request 51 in a month gets an HTTP 429 response with reason free_monthly_quota. The body explains the limit and links to pricing. The count resets on the 1st of each month at 00:00 UTC, and there is no daily limit, so you can use all 50 in one sitting. Your dashboard shows how many requests you have used this month.

HTTP/1.1 429 Too Many Requests
{
  "error": "Free plan limit reached: you've used all 50 requests for this month (resets on the 1st, 00:00 UTC). Basic is $5/month for 5,000 requests/month, and Pro is $29/month for 50,000 plus the game-day injury changes feed. Your key stays the same when you upgrade: https://www.gridirondata.com/pages/pricing.html",
  "reason": "free_monthly_quota",
  "upgrade_url": "https://www.gridirondata.com/pages/pricing.html"
}

What other free options are there?

Other free sources are good at different jobs. nflverse publishes open play-by-play and roster data for R and Python. The Sleeper API returns league, roster and player data for Sleeper leagues. GridIron's free plan adds PPR projections, deviations, snap share and impact-tagged news under one key. Many developers use more than one.

Frequently asked questions

Is the GridIron Data API really free?

Yes. The free plan costs $0 and needs no credit card. It allows 50 requests a month at 10 a minute.

Do I need a credit card to sign up?

No. The free plan asks for a name, an email and a password. You only enter a card if you choose Basic or Pro.

Can I upgrade later without changing my code?

Yes. Upgrading to Basic or Pro keeps your key and raises its limits.

Which endpoints are not on the free plan?

Only the Pro injury changes feed, GET /api/v1/injuries/changes. Every other endpoint works on a free key.