Beginner~12 min setupProductivity & FormsVerified April 2026
Notion logo
Typeform logo

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-time

Use case type

import

Real-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.

/mo
505005K50K

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

Skip the setup

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.

A Typeform with questions for content topic, deadline, assigned writer, and description
A Notion database set up as your content calendar with Topic, Deadline, Writer, and Description properties
Make account with available operations (free tier includes 1,000/month)
Admin access to both your Typeform and Notion workspace
Content request form that's already receiving submissions to test with

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Content Topictitle
Content Deadlinedeadline
Assigned Writerwriter
Request Descriptiondescription
3 optional fields▸ show
Content Typecontent_type
Priority Levelpriority
Requesting Teamteam

Step-by-Step Setup

1

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.

  1. 1Click the blue 'Create a new scenario' button on Make dashboard
  2. 2Select 'Typeform' from the app grid
  3. 3Choose 'Watch Responses' as your trigger module
What you should see: You should see a single Typeform module with a question mark icon in your scenario canvas.
2

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.

  1. 1Click the Typeform module to open settings
  2. 2Click 'Add' next to the Connection field
  3. 3Sign in with your Typeform credentials in the popup
  4. 4Authorize Make to access your Typeform data
What you should see: Connection field shows 'My Typeform connection' with a green checkmark.
Common mistake — Don't use a personal access token here — the OAuth connection handles webhooks automatically while tokens require manual polling.
Make settings
Connection
Choose a connection…Add
click Add
Notion
Log in to authorize
Authorize Make
popup window
Connected
green checkmark
3

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.

  1. 1Click the 'Form' dropdown in the Typeform module
  2. 2Select your content request form from the list
  3. 3Set 'Limit' to 1 for testing purposes
  4. 4Click 'OK' to save the trigger configuration
What you should see: The module shows your form name and displays available response fields below.
Common mistake — If your form doesn't appear, refresh the dropdown — newly created forms take 30-60 seconds to sync.
4

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.

  1. 1Click the '+' button to the right of your Typeform module
  2. 2Search for 'Notion' and select it from results
  3. 3Choose 'Create a Database Item' from the action list
  4. 4Click 'Add' to insert the module
What you should see: A second module labeled 'Notion - Create a Database Item' appears connected to your Typeform module.
Common mistake — Don't pick 'Create a Page' — that creates standalone pages, not database items with your calendar properties.
5

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.

  1. 1Click the Notion module to open its settings
  2. 2Click 'Add' next to the Connection field
  3. 3Select your Notion workspace from the authorization popup
  4. 4Click 'Allow access' to grant Make permission
What you should see: Connection field shows your workspace name with a green status indicator.
Common mistake — If you have multiple workspaces, double-check you're selecting the one with your content calendar database.
6

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.

  1. 1Click the 'Database ID' dropdown in the Notion module
  2. 2Find and select your content calendar database
  3. 3Wait for the properties list to load below
  4. 4Verify you see Topic, Deadline, and Writer fields
What you should see: Database properties appear as mappable fields, including your custom content calendar columns.
Common mistake — Can't find your database? Make sure it's shared with your integration — check sharing settings and add the Make integration as an editor.
7

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.

  1. 1Find the 'Title' or 'Topic' property in the Notion module
  2. 2Click the field mapping icon next to it
  3. 3Select the topic question from your Typeform response data
  4. 4Preview shows the mapped field path
What you should see: The topic field displays something like '1. Topic: {{1.Topic}}' showing the connection to Typeform.
Notion fields
Name
Status
Assignee
Due Date
Priority
available as variables:
1.props.Name
1.props.Status
1.props.Assignee
1.props.Due Date
1.props.Priority
8

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.

  1. 1Click the Deadline property field in Notion module
  2. 2Select the deadline response from Typeform data
  3. 3Click the Writer/Assignee field
  4. 4Map to the writer selection from your form
What you should see: Both fields show mapped connections like '{{1.Deadline}}' and '{{1.Writer}}' with Typeform data.
Common mistake — If deadline comes as text, add a parseDate() function to convert it to Notion's date format.
9

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.

  1. 1Scroll to find Description or Content property in Notion
  2. 2Click the field mapping button
  3. 3Select the description question from Typeform
  4. 4Add any additional detail fields your form captures
What you should see: Description field shows mapped content like '{{1.Description}}' or combined text from multiple form fields.
Common mistake — Long descriptions might get truncated — Notion rich text fields have a 2000 character limit per block.

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')
10

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.

  1. 1Click 'Run once' at the bottom left of the scenario
  2. 2Submit a test response through your actual Typeform
  3. 3Return to Make and check the execution log
  4. 4Verify a new page appeared in your Notion database
What you should see: Execution shows green checkmarks, and your Notion database contains a new page with all mapped fields populated.
Common mistake — Test with real form data, not Make's sample data — sample data doesn't match your actual form structure.
Make
▶ Run once
executed
Notion
Typeform
Typeform
🔔 notification
received
11

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.

  1. 1Right-click the Notion module
  2. 2Select 'Add error handler' from the menu
  3. 3Choose 'Ignore' to skip failed items
  4. 4Add a 'Break' directive to stop processing on critical errors
What you should see: A small error handler icon appears on the Notion module showing your error handling is configured.
Common mistake — Don't use 'Rollback' here — it would undo the Typeform trigger and lose the response data permanently.
12

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.

  1. 1Click the 'OFF' toggle in the bottom left corner
  2. 2Toggle switches to 'ON' with a green background
  3. 3Set scheduling to 'Immediately' for real-time processing
  4. 4Click 'OK' to confirm the activation
What you should see: Scenario status shows 'ON' and displays 'Listening for webhooks' in the execution log.
Common mistake — Double-check your field mappings before activating — errors in live scenarios consume operations and create incomplete Notion pages.

Scaling Beyond 300+ requests/month+ Records

If your volume exceeds 300+ requests/month records, apply these adjustments.

1

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.

2

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.

3

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

VerdictWhy Make for this workflow

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.

Cost

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.

Tradeoffs

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 systemSet 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 updatesBuild a scenario that monitors Notion page property changes and notifies requesters when their content moves from 'In Progress' to 'Complete' status.
  • Generate content brief templatesExpand 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

Was this guide helpful?
Notion + Typeform overviewMake profile →