Notion integration
Notion can act as a simple CMS: your team writes in a Notion database and the site reads it. Framer has an official Notion plugin that syncs databases into Framer CMS; Webflow needs a third-party sync app; on Astro and Next.js we read Notion with the official @notionhq/client at build time. It suits teams that already live in Notion and publish a few times a week.
| Complexity | Medium |
|---|---|
| Method |
|
| Typical setup | Half a day to 2 days |
| What we do | We shape the Notion database to match the page design, set up the sync or build step, and handle images so they don’t expire. |
| Category | CMS |
Setup by platform
How we set up Notion
Framer
- Native
Framer’s own Notion plugin maps database properties to Framer CMS fields, including rich text, dates, images, references and galleries, and re-syncs in one click.
Webflow
- Zapier or Make
There is no first-party Notion app for Webflow. Marketplace apps such as Whalesync (two-way) or SyncFlow (one-way) sync a Notion database into Webflow CMS.
Astro
- API
@notionhq/client queries the database at build time with a token from a server secret. A Notion automation or a scheduled job triggers a rebuild after edits.
Next.js
- API
The same client in server components with time-based revalidation, so pages refresh from Notion without a full redeploy.
Use cases
What teams use it for
Blog or changelog
Posts written and reviewed in Notion, published to the site with the right layout.
Job board
Open roles kept in a Notion database the hiring team already uses.
Resource library
Guides, templates and links curated in Notion and listed on the site with filters.
Before you add it
What to watch out for
Limits
Image links expire after an hour
Notion-hosted file URLs are valid for one hour. We download images at build or sync time instead of linking to Notion.
Limits
Rate limits
The API allows 180 requests a minute per connection on most plans, 600 on Business and Enterprise. Build-time fetching with caching stays well inside that.
Security
Token stays on the server
A Notion token in a web page isn’t a secret; anyone can use it. Each database also has to be shared with the connection, or requests fail.
FAQ
Questions about Notion
Why do Notion images break on our site after a while?
Notion file URLs expire after one hour. Images need to be downloaded and hosted with the site, which our sync and build setups do.
Is Notion a good long-term CMS?
For a blog, changelog or job board, yes. For many page types, localisation or editorial workflows, a headless CMS like Sanity or Framer and Webflow’s own CMS will serve you better.
Why does the API return an error for our database?
The database must be shared with the Notion connection first. It’s a one-time step in the database’s connection settings.
You've reached the end, so now…
Tell us what you’re building.
We’ll help you map the right scope, team, timeline, and next steps.
Book a call