Typeform responses → Notion database

Every form response becomes a Notion page your team can sort, assign and track.

Easy Saves ~4 hours/month ProductivityBy Flowngn team

Works with n8n · Make · Zapier

How it works

Trigger: Typeform — new submission
  1. Receive the form answers.
  2. Create a Notion page with the name, email and message as properties.

Diagram

TNew responseTypeform TriggerNCreate Notion pageNotion
Trigger App

Build it

Pick your tool — same automation, step by step.

Copy and paste straight into an n8n canvas (Ctrl+V), or download and use Import from File. Then connect your own credentials and replace every YOUR_… placeholder.

Workflow JSON
Show code (92 lines)
{
  "name": "Typeform responses → Notion database (Flowngn)",
  "nodes": [
    {
      "parameters": {
        "content": "## Typeform responses → Notion database\nEvery form response becomes a Notion page your team can sort, assign and track.\n\n**Setup**\n1. Open each node and connect your own credentials.\n2. Replace every YOUR_… placeholder.\n3. Test once, then activate.\n\nFree template from Flowngn",
        "height": 260,
        "width": 340
      },
      "id": "3da35c9b-42cb-4699-a089-3e47fd2dd31b",
      "name": "Setup notes",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -420,
        -60
      ]
    },
    {
      "parameters": {
        "formId": "YOUR_FORM_ID"
      },
      "id": "3da35c9b-42cb-4699-a089-3e47fd2dd31b",
      "name": "New response",
      "type": "n8n-nodes-base.typeformTrigger",
      "typeVersion": 1.1,
      "position": [
        0,
        0
      ],
      "webhookId": "3da35c9b-42cb-4699-a089-3e47fd2dd31b"
    },
    {
      "parameters": {
        "resource": "databasePage",
        "operation": "create",
        "databaseId": {
          "__rl": true,
          "value": "YOUR_DATABASE_ID",
          "mode": "id"
        },
        "title": "={{ $json['Your name'] }}",
        "propertiesUi": {
          "propertyValues": [
            {
              "key": "Email|email",
              "emailValue": "={{ $json['Your email'] }}"
            },
            {
              "key": "Message|rich_text",
              "textContent": "={{ $json['Message'] }}"
            },
            {
              "key": "Status|select",
              "selectValue": "New"
            }
          ]
        },
        "options": {}
      },
      "id": "3da35c9b-42cb-4699-a089-3e47fd2dd31b",
      "name": "Create Notion page",
      "type": "n8n-nodes-base.notion",
      "typeVersion": 2.2,
      "position": [
        300,
        0
      ]
    }
  ],
  "connections": {
    "New response": {
      "main": [
        [
          {
            "node": "Create Notion page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "meta": {
    "templateCredsSetupCompleted": false
  },
  "tags": []
}

Open in the playground to edit →

Tips

  • Add a Status property (New / In progress / Done) to turn the database into a tracker.

Related flows