Notion’s API rate limits: what breaks and how to route around them

Notion rooms W of temple of Athena terrace (1991).jpg

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

If you’re running automations that read from or write to Notion—content calendars, CRM pipelines, client dashboards—you’ve probably hit the wall where everything just… stops working. No error message in your automation tool. No failed tasks in Zapier or Make. Just silence.

The culprit is usually Notion’s API rate limit, and it’s stricter than most solo operators realize.

What Notion actually throttles

Notion’s public API enforces a hard limit of 3 requests per second per integration. That sounds generous until you understand what counts as a request.

Every time your automation reads a database, updates a page property, appends a block, or queries a filtered view, that’s one request. If you’re syncing a content calendar with 20 rows, updating each row’s status, and logging a timestamp, you’ve just burned through 60 requests in under a second—triggering a 20-second cooldown.

The API returns a 429 status code when you hit the limit, but most no-code tools don’t surface that error clearly. Zapier marks the task as successful. Make shows a generic timeout. Your data just doesn’t update.

Notion also enforces a secondary limit: 1,000 requests per 5 minutes per workspace. That’s the one that breaks bulk imports, CSV syncs, and any automation that loops through more than a few dozen records at once.

Where rate limits break your workflow

The most common failure point is multi-step Zaps or Make scenarios that chain database reads. Let’s say you’re running a weekly automation that:

  • Fetches all published posts from a Notion database
  • Checks each post’s performance in an analytics tool
  • Writes the traffic number back to Notion

If you have 15 posts, that’s 15 read requests, 15 API calls to your analytics tool, and 15 write requests back to Notion—45 total requests to Notion in under 10 seconds. You’ll hit the rate limit on request 30, and the remaining 15 posts won’t update.

Another common break: real-time syncs. If you’re using Notion as a CRM and updating deal stages every time a lead replies, you’ll trip the limit during high-volume days. A burst of 10 inbound emails in 3 seconds means 10 Notion writes—well over the 3-per-second threshold.

How to route around the limit without rewriting everything

The simplest fix is to add delays. In Zapier, insert a 400-millisecond delay step between each Notion action. In Make, set your iterator to process one record every 350 milliseconds. That keeps you under 3 requests per second with a small buffer for API jitter.

For bulk operations, batch your updates. Instead of updating 50 Notion rows one at a time, collect the changes in an array, then write them in chunks of 10 with 4-second pauses between chunks. Make handles this better than Zapier—its Array Aggregator and Sleep modules make batching straightforward.

If you’re syncing data that doesn’t need to be real-time, switch to scheduled runs. A Zap that runs every 15 minutes instead of on every trigger gives Notion’s rate limit time to reset between batches. You lose immediacy, but you gain reliability.

For high-volume workflows, consider using Notion as a read-only dashboard and writing updates to Airtable or Google Sheets first. Both have more forgiving API limits (Airtable allows 5 requests per second; Google Sheets is effectively unlimited for small operators). You can still display the data in Notion by embedding a synced view, but the write-heavy work happens elsewhere.

When to skip Notion entirely

If your workflow requires more than 100 Notion updates per hour, you’re fighting the platform. Notion’s API is built for lightweight integrations—pulling a task list into Slack, logging form submissions, syncing a handful of records. It’s not designed to be a transactional database.

For high-frequency writes—CRM activity logs, real-time inventory updates, live analytics dashboards—use a tool with a higher rate ceiling. Airtable, Baserow, or even a simple PostgreSQL instance on a $6/month DigitalOcean droplet will handle the load without throttling.

Notion still works well as the interface for that data. You can run a nightly sync from your transactional database into Notion, giving you the clean UX for planning and review without the API bottleneck during live operations.

If you’re running into silent automation failures and can’t figure out why, check your Notion request volume first. Add delays, batch your updates, or move the write-heavy work to a tool that won’t throttle you at 3 requests per second. Your automations will thank you.

Hit reply if you’ve found a cleaner workaround—I’d love to hear how you’re handling this.

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

Other newsletters you might like

Love South Africa

South Africa as a travel destination. The Rainbow nation full of wonderful gems to visit. Going on Safari in the Kruger National Park, visiting the beautiful beaches of Cape Town, indulge in the South African culture and heritage.

Subscribe

Love Netherlands

Canal towns, hidden villages, Dutch stories — a slow, loving look at the Netherlands, written by the people who love it most.

Subscribe

Love London

A newsletter for Londoners who want to rediscover their own city. Travellers planning their first or fifth visit. Anglophiles who fell in love with London through literature, film, or a rainy afternoon on the South Bank.

Subscribe

Love Castles

Apart from the fascinating and rich history of castles, people love to visit them for their majestic beauty. From the imposing stone walls to the beautiful architecture, there is something captivating about these grand structures.

Subscribe

Newsletters via the One Two Three Send network.  ·  Want your newsletter featured here? Click here