Complete breakdown of SAM.gov's API rate limits by access tier, including how to get higher limits and alternatives for high-volume use cases.
Get verified contact information for contracting officers and program managers to accelerate your outreach. Try GovCon Contacts →
We work with the SAM.gov API daily. Here's what we've found about how the rate limits actually behave.
SAM.gov tracks usage by API key. If you use the same key from different servers or locations, the requests count against the same daily quota. There is no IP-based blocking or geo-restriction. The API is accessible globally.
When you hit the limit, SAM.gov returns a 429 response with a Retry-After header pointing to midnight UTC. Example response:
{"code":"900804","message":"Message throttled out","description":"You have exceeded your quota. You can access API after [tomorrow] 00:00:00+0000 UTC"}
There's no partial reset or sliding window during the day. Once you're out, you wait until midnight.
On the basic tier, 10 requests per day means 10 API calls total. Each call returns up to 1,000 records per page, so you can get a decent amount of data if you plan your queries. But if you need to run different searches (by NAICS, by agency, by state), you run out of requests quickly.
To get the 1,000/day tier, you need:
Total: about 2-3 weeks. Free, but requires annual renewal.
Here are some real scenarios:
That's 4 requests. You have 6 left for the day.
Rate limits aside, there are things the SAM.gov API simply doesn't include in its responses:
These aren't rate limit issues, but they affect how many requests you actually need to get the data you want.
If SAM.gov's rate limits don't work for your use case, you have a few options:
Help improve this guide for fellow developers. Press Ctrl+Enter to share issues you encountered, missing information, or suggestions.
Last Updated: April 2026 | Questions? [email protected]