AutomationFlowsEmail & Gmail › Typeform to HubSpot Lead Workflow

Typeform to HubSpot Lead Workflow

Original n8n title: Noop Gmail

Noop Gmail. Uses hubspot, noOp, typeformTrigger, gmail. Event-driven trigger; 7 nodes.

Event trigger★★★★☆ complexity7 nodesHubSpotTypeform TriggerGmail
Email & Gmail Trigger: Event Nodes: 7 Complexity: ★★★★☆ Added:

This workflow follows the Gmail → HubSpot recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "nodes": [
    {
      "name": "create new contact",
      "type": "n8n-nodes-base.hubspot",
      "position": [
        -300,
        1200
      ],
      "parameters": {
        "email": "={{$json[\"form_email\"]}}",
        "resource": "contact",
        "additionalFields": {
          "industry": "={{$json[\"form_department\"]}}",
          "lastName": "={{$json[\"form_lastname\"]}}",
          "firstName": "={{$json[\"form_firstname\"]}}",
          "companyName": "={{$json[\"form_companyname\"]}}"
        }
      },
      "credentials": {
        "hubspotApi": "<your credential>"
      },
      "typeVersion": 1
    },
    {
      "name": "update lead stage",
      "type": "n8n-nodes-base.hubspot",
      "position": [
        100,
        1100
      ],
      "parameters": {
        "email": "={{$node[\"create new contact\"].json[\"properties\"][\"email\"][\"value\"]}}",
        "resource": "contact",
        "additionalFields": {
          "lifeCycleStage": "opportunity"
        }
      },
      "credentials": {
        "hubspotApi": "<your credential>"
      },
      "typeVersion": 1
    },
    {
      "name": "NoOp",
      "type": "n8n-nodes-base.noOp",
      "position": [
        100,
        1300
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "name": "Set values",
      "type": "n8n-nodes-base.set",
      "position": [
        -500,
        1200
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "form_firstname",
              "value": "={{$json[\"First up, what's your name?\"]}}"
            },
            {
              "name": "form_lastname",
              "value": "={{$json[\"And your surname, [field:fda1954c-f7a3-4fd3-a8dc-dcad5160bab5]?\"]}}"
            },
            {
              "name": "form_department",
              "value": "={{$json[\"And in which department do you work, [field:fda1954c-f7a3-4fd3-a8dc-dcad5160bab5]?\"]}}"
            },
            {
              "name": "form_companyname",
              "value": "={{$json[\"Great! Now what company are you from?\"]}}"
            },
            {
              "name": "form_email",
              "value": "={{$json[\"Just a couple more questions left! What's your email address?\"]}}"
            }
          ],
          "boolean": [
            {
              "name": "form_interest",
              "value": "={{$json[\"And are you currently looking to scale your visual content?\"]}}"
            }
          ]
        },
        "options": {},
        "keepOnlySet": true
      },
      "typeVersion": 1
    },
    {
      "name": "Typeform Trigger",
      "type": "n8n-nodes-base.typeformTrigger",
      "position": [
        -700,
        1200
      ],
      "parameters": {
        "formId": "RPueloJC"
      },
      "credentials": {
        "typeformApi": "<your credential>"
      },
      "typeVersion": 1
    },
    {
      "name": "lead interested",
      "type": "n8n-nodes-base.if",
      "position": [
        -100,
        1200
      ],
      "parameters": {
        "conditions": {
          "boolean": [
            {
              "value1": "={{$node[\"Set values\"].json[\"form_interest\"]}}",
              "value2": true
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "name": "send information",
      "type": "n8n-nodes-base.gmail",
      "position": [
        300,
        1100
      ],
      "parameters": {
        "toList": [
          "={{$json[\"properties\"][\"email\"][\"value\"]}}"
        ],
        "message": "=Hello {{$json[\"properties\"][\"firstname\"][\"value\"]}},\n\nI'm glad to hear you're interested in our services. You can schedule a call with me here: [calendly_link].\nUntil then, check out this presentation about how we can help your business: [presentation_link].\nLooking forward to talking to you!\n\nBest,\nTeam",
        "subject": "So you're interested in growing your business",
        "resource": "message",
        "additionalFields": {}
      },
      "credentials": {
        "gmailOAuth2": "<your credential>"
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Set values": {
      "main": [
        [
          {
            "node": "create new contact",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "lead interested": {
      "main": [
        [
          {
            "node": "update lead stage",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "NoOp",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Typeform Trigger": {
      "main": [
        [
          {
            "node": "Set values",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "update lead stage": {
      "main": [
        [
          {
            "node": "send information",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "create new contact": {
      "main": [
        [
          {
            "node": "lead interested",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Noop Gmail. Uses hubspot, noOp, typeformTrigger, gmail. Event-driven trigger; 7 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More Email & Gmail workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Email & Gmail

Recruiting agency. Uses typeformTrigger, airtable, httpRequest, googleDrive. Event-driven trigger; 36 nodes.

Typeform Trigger, Airtable, HTTP Request +4
Email & Gmail

Fluidflow Licensing Framework. Uses httpRequest, xero, googleSheetsTrigger, slack. Event-driven trigger; 25 nodes.

HTTP Request, Xero, Google Sheets Trigger +4
Email & Gmail

🚀 What this template does

HTTP Request, HubSpot, Gmail +2
Email & Gmail

AI Client Onboarding Automation. Uses jotFormTrigger, telegram, hubspot, gmail. Event-driven trigger; 16 nodes.

Jot Form Trigger, Telegram, HubSpot +2
Email & Gmail

N_01_Simple_Lead_Tracker_Automation_v4. Uses googleSheetsTrigger, slack, gmail, hubspot. Event-driven trigger; 14 nodes.

Google Sheets Trigger, Slack, Gmail +1