

How to Create Notion Pages from Typeform Content Requests with Make
Automatically create structured Notion pages in your content calendar whenever someone submits a content request through Typeform.
Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.
Best for
Content teams that need real-time intake processing with structured Notion pages and complex field mapping
Not ideal for
Teams with under 50 requests/month or those wanting rich text formatting in Notion descriptions
Sync type
real-timeUse case type
importReal-World Example
A 25-person B2B SaaS marketing team uses this to process 300+ content requests monthly from sales, customer success, and product teams. Before automation, the content manager manually copied form responses into Notion twice daily, losing 45 minutes each time and creating a 4-6 hour delay before writers saw new requests. Now requests appear in the content calendar within 30 seconds of submission.
What Will This Cost?
Drag the slider to your expected monthly volume.
Each platform counts differently — Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.





Prices shown for annual billing. Based on published pricing as of April 2026.
Estimated ROI
1000
min saved/mo
$583
labor value/mo
Free
no platform cost
Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.
Implementation
Import this workflow directly into Make
Copy the pre-built Make blueprint and paste it straight into Make. All modules, filters, and field mappings are already configured — you just need to connect your accounts.
Before You Start
Make sure you have everything ready.
Field Mapping
Map these fields between your apps.
| Field | API Name | |
|---|---|---|
| Required | ||
| Content Topic | title | |
| Content Deadline | deadline | |
| Assigned Writer | writer | |
| Request Description | description | |
3 optional fields▸ show
| Content Type | content_type |
| Priority Level | priority |
| Requesting Team | team |
Step-by-Step Setup
Dashboard > Create scenario > Typeform > Watch Responses
Create new scenario in Make
Start building your automation by setting up a new scenario. This creates the container where you'll connect Typeform to Notion.
- 1Click the blue 'Create a new scenario' button on Make dashboard
- 2Select 'Typeform' from the app grid
- 3Choose 'Watch Responses' as your trigger module
Typeform module > Connection > Add
Connect your Typeform account
Authenticate with Typeform so Make can access your forms and responses. You'll need to create a webhook connection that fires when new responses arrive.
- 1Click the Typeform module to open settings
- 2Click 'Add' next to the Connection field
- 3Sign in with your Typeform credentials in the popup
- 4Authorize Make to access your Typeform data
Typeform module > Form dropdown
Select your content request form
Choose which Typeform contains your content requests. This determines what data Make will receive when someone submits a request.
- 1Click the 'Form' dropdown in the Typeform module
- 2Select your content request form from the list
- 3Set 'Limit' to 1 for testing purposes
- 4Click 'OK' to save the trigger configuration
Scenario canvas > + > Notion > Create a Database Item
Add Notion create page module
Insert a Notion module that will create new pages in your content calendar database. This is where your content requests will land as structured pages.
- 1Click the '+' button to the right of your Typeform module
- 2Search for 'Notion' and select it from results
- 3Choose 'Create a Database Item' from the action list
- 4Click 'Add' to insert the module
Notion module > Connection > Add
Connect Notion workspace
Link your Notion account so Make can write to your content calendar database. The connection requires workspace-level permissions.
- 1Click the Notion module to open its settings
- 2Click 'Add' next to the Connection field
- 3Select your Notion workspace from the authorization popup
- 4Click 'Allow access' to grant Make permission
Notion module > Database ID dropdown
Select content calendar database
Point Make to the specific Notion database where content requests should become pages. This database should already have properties for topic, deadline, and assigned writer.
- 1Click the 'Database ID' dropdown in the Notion module
- 2Find and select your content calendar database
- 3Wait for the properties list to load below
- 4Verify you see Topic, Deadline, and Writer fields
Notion module > Properties > Title/Topic field
Map content topic field
Connect the content topic from your Typeform to the title or topic field in Notion. This becomes the main identifier for each request.
- 1Find the 'Title' or 'Topic' property in the Notion module
- 2Click the field mapping icon next to it
- 3Select the topic question from your Typeform response data
- 4Preview shows the mapped field path
Notion module > Properties > Deadline and Writer fields
Map deadline and writer fields
Connect the remaining form fields to create a complete content brief. These fields structure your content pipeline in Notion.
- 1Click the Deadline property field in Notion module
- 2Select the deadline response from Typeform data
- 3Click the Writer/Assignee field
- 4Map to the writer selection from your form
Notion module > Properties > Description field
Add request description mapping
Map any description or details fields to capture the full context of each content request. This gives writers complete information upfront.
- 1Scroll to find Description or Content property in Notion
- 2Click the field mapping button
- 3Select the description question from Typeform
- 4Add any additional detail fields your form captures
Drop this into a Make custom function.
JavaScript — Custom FunctionparseDate({{typeform.deadline}}, 'MM/DD/YYYY'); formatDate(now; 'YYYY-MM-DD')▸ Show code
parseDate({{typeform.deadline}}, 'MM/DD/YYYY'); formatDate(now; 'YYYY-MM-DD')... expand to see full code
parseDate({{typeform.deadline}}, 'MM/DD/YYYY'); formatDate(now; 'YYYY-MM-DD')Scenario controls > Run once
Test the complete workflow
Run a test to verify data flows correctly from Typeform to Notion. This catches mapping errors before going live.
- 1Click 'Run once' at the bottom left of the scenario
- 2Submit a test response through your actual Typeform
- 3Return to Make and check the execution log
- 4Verify a new page appeared in your Notion database
Notion module > Right-click > Add error handler
Configure error handling
Set up error handling so failed requests don't break your workflow. This prevents data loss when Notion API is temporarily unavailable.
- 1Right-click the Notion module
- 2Select 'Add error handler' from the menu
- 3Choose 'Ignore' to skip failed items
- 4Add a 'Break' directive to stop processing on critical errors
Scenario controls > Toggle ON
Turn on automatic execution
Switch the scenario from manual testing to automatic execution. Now it will create Notion pages immediately when content requests arrive.
- 1Click the 'OFF' toggle in the bottom left corner
- 2Toggle switches to 'ON' with a green background
- 3Set scheduling to 'Immediately' for real-time processing
- 4Click 'OK' to confirm the activation
Scaling Beyond 300+ requests/month+ Records
If your volume exceeds 300+ requests/month records, apply these adjustments.
Add rate limiting protection
Insert a Sleep module set to 1000ms before the Notion action to stay under their 3 requests/second limit. Without this, high-volume periods will trigger rate limit errors and failed page creation.
Use database item creation over page creation
Database items are faster to create and use fewer API calls than full pages. Stick with 'Create Database Item' action rather than 'Create Page' to minimize operation usage and processing time.
Implement batch error handling
Set up a separate error handling scenario that processes failed requests from a Google Sheet backup. This prevents losing content requests during Notion API outages or maintenance windows.
Going live
Production Checklist
Before you turn this on for real, confirm each item.
Troubleshooting
Common errors and how to fix them.
Frequently Asked Questions
Common questions about this workflow.
Analysis
Use Make for this if you need real-time processing and complex field mapping. Make's webhook triggers fire within 15 seconds of form submission, and the visual mapper handles Notion's property types better than Zapier's text-only fields. The router system lets you send different request types to different databases. Skip Make if your content requests are low-volume (under 50/month) — Zapier's simpler interface isn't worth learning Make's steeper setup curve for basic automation.
This workflow uses 2 operations per content request: one for the Typeform trigger, one for the Notion page creation. At 200 requests/month, that's 400 operations total. That fits Make's Core plan at $9/month (10,000 operations). Zapier would cost $20/month for their Starter plan to handle the same volume. N8n is free but requires hosting costs around $15/month for reliable uptime. Make wins on price until you hit 5,000+ requests monthly.
Zapier handles Notion's rich text formatting better — you can add bullet points and styling that Make strips out. N8n gives you custom JavaScript for complex data transformations that Make's built-in functions can't handle. But Make's webhook reliability beats both competitors. Zapier's polling triggers can delay content requests by 15 minutes on lower plans. N8n's webhook endpoint occasionally drops requests during server restarts, forcing manual re-processing.
Notion's API doesn't return created page URLs in Make's response data, so you can't automatically notify writers with a direct link. You'll need to build the URL manually using the database ID and returned page ID. Typeform's webhook payload includes the response ID but not the respondent's email unless you specifically ask for it in your form. Make's Notion module occasionally fails on databases with more than 50 properties due to API timeout limits during property enumeration.
Ideas for what to build next
- →Add writer notification system — Set up a follow-up automation that sends Slack DMs or emails to assigned writers when new content requests are created in their name.
- →Create request status updates — Build a scenario that monitors Notion page property changes and notifies requesters when their content moves from 'In Progress' to 'Complete' status.
- →Generate content brief templates — Expand the automation to create Google Docs drafts with pre-filled content briefs based on the request type and automatically share them with assigned writers.
Related guides
How to Share Notion Meeting Notes to Slack with Pipedream
~15 min setup
How to Share Notion Meeting Notes to Slack with Power Automate
~15 min setup
How to Share Notion Meeting Notes to Slack with n8n
~20 min setup
How to Send Notion Meeting Notes to Slack with Zapier
~8 min setup
How to Share Notion Meeting Notes to Slack with Make
~12 min setup
How to Create Notion Tasks from Slack with Pipedream
~15 min setup