AutomationFlowsCRM & Sales › Qualify Inbound Real Estate Leads From Gmail with Gemini and Hubspot

Qualify Inbound Real Estate Leads From Gmail with Gemini and Hubspot

ByHassan @hassans on n8n.io

When a property portal sends a lead notification to your Gmail, this workflow parses the email with Gemini AI, qualifies the lead, sends an instant acknowledgment, creates a HubSpot contact and deal in the right pipeline stage, and alerts you for hot leads. A lead notification…

Event trigger★★★★☆ complexityAI-powered27 nodesGmail TriggerGoogle GeminiGmailHubSpotGoogle SheetsAirtableSlack
CRM & Sales Trigger: Event Nodes: 27 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #17409 — we link there as the canonical source.

This workflow follows the Airtable → Gmail 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
{
  "id": "LMTMJjPA0XlMrcoj",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Inbound Email Lead Parser and Qualifier-n8nSubmission",
  "tags": [],
  "nodes": [
    {
      "id": "2bda9b83-45a9-4806-aad8-e41f1b460717",
      "name": "New Lead Email Received",
      "type": "n8n-nodes-base.gmailTrigger",
      "position": [
        -592,
        -16
      ],
      "parameters": {},
      "typeVersion": 1.4
    },
    {
      "id": "424fb8aa-4939-4238-862a-bac67841d444",
      "name": "Valid Lead Email?",
      "type": "n8n-nodes-base.if",
      "position": [
        -208,
        -16
      ],
      "parameters": {},
      "typeVersion": 2.3
    },
    {
      "id": "49bd5fdf-5054-4c5c-bd39-4507fb16111e",
      "name": "Extract Email Metadata",
      "type": "n8n-nodes-base.code",
      "position": [
        48,
        -32
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "cdbb5710-d864-4e61-a33a-6499403c7b1c",
      "name": "Parse Email & Qualify Lead",
      "type": "@n8n/n8n-nodes-langchain.googleGemini",
      "position": [
        272,
        -32
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "494e587e-599f-4209-ad35-dc3b835588db",
      "name": "Parse AI Output",
      "type": "n8n-nodes-base.code",
      "position": [
        608,
        -32
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "2a03cec7-bcb7-4e0b-8828-08a49da1704d",
      "name": "Has Lead Email?",
      "type": "n8n-nodes-base.if",
      "position": [
        816,
        -32
      ],
      "parameters": {},
      "typeVersion": 2.3
    },
    {
      "id": "cca52207-ffd0-4a0f-85e5-bf4fb54f2b74",
      "name": "Send Acknowledgment to Lead",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1024,
        -208
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "e95624f6-bbb3-4f71-99a0-d1da42d2c0a2",
      "name": "HubSpot: Upsert Contact",
      "type": "n8n-nodes-base.hubspot",
      "position": [
        1216,
        -16
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "8c0ad9ae-a11a-4aef-903a-2df4150d5d47",
      "name": "HubSpot: Create Deal",
      "type": "n8n-nodes-base.hubspot",
      "position": [
        1424,
        -16
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "e0d1c4bd-07e4-43d1-9b77-4518c01abc84",
      "name": "Log to Lead Parser Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1632,
        -160
      ],
      "parameters": {},
      "typeVersion": 4.7
    },
    {
      "id": "a522c153-9cd4-4ece-a83e-8a6f4604f2ff",
      "name": "Is Lead Hot?",
      "type": "n8n-nodes-base.if",
      "position": [
        2032,
        -32
      ],
      "parameters": {},
      "typeVersion": 2.3
    },
    {
      "id": "16cea95f-6415-4495-81e7-657f2c725707",
      "name": "Update Row: Agent Notified",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2544,
        -64
      ],
      "parameters": {},
      "typeVersion": 4.7
    },
    {
      "id": "5728f8c8-5704-42be-b7c9-326fa58c480c",
      "name": "Airtable: Create Lead Record",
      "type": "n8n-nodes-base.airtable",
      "position": [
        1632,
        160
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "7f5c5403-2181-45c9-a9f8-c49d9959ae18",
      "name": "Notify Agent via Slack",
      "type": "n8n-nodes-base.slack",
      "position": [
        2256,
        96
      ],
      "parameters": {},
      "typeVersion": 2.5
    },
    {
      "id": "18b0ac9d-f6e2-4580-9217-1eba0a0e285f",
      "name": "Fetch Full Email",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -400,
        -16
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "5a6d8990-ae6a-460c-9c7b-81b7cbc27769",
      "name": "Notify Agent for Hot Lead",
      "type": "n8n-nodes-base.gmail",
      "position": [
        2256,
        -192
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "8e909fcd-17f8-4e1c-8e0b-8ed83c8fa132",
      "name": "Airtable: Update Agent Notified",
      "type": "n8n-nodes-base.airtable",
      "position": [
        2544,
        160
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "5b78c25d-b72e-4430-ac79-d89394f80fca",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1408,
        -512
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "edbd97fc-03c7-4f74-821f-d4eef7253707",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -640,
        -432
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "0b6e909b-a5b1-4ca1-941f-47fee711acda",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -48,
        -432
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "b3e0a930-3bc5-4a54-8347-b19a716d8f30",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        240,
        -432
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "1d16e49f-fc06-4023-84f4-efb93a18af7d",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        784,
        -432
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "e5a1e4e2-5fd8-4752-8dbb-a0a00fb8e930",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1808,
        -432
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "9a1f157d-8493-48d8-bca9-8935e83342cb",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -48,
        -64
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "ec780274-7612-461d-9cfb-5b534c5140e5",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        -48
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "7cacec12-d7d9-48b9-b373-10d718882b83",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1824,
        -240
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "b1a04ac8-ac6d-439c-9a35-ce18fea3cd07",
      "name": "Store Airtable Record ID",
      "type": "n8n-nodes-base.set",
      "position": [
        1856,
        160
      ],
      "parameters": {},
      "typeVersion": 3.4
    }
  ],
  "active": false,
  "settings": {
    "binaryMode": "separate",
    "availableInMCP": false,
    "executionOrder": "v1"
  },
  "versionId": "384ba2f3-8794-4a95-b7f5-80a3019435aa",
  "nodeGroups": [],
  "connections": {
    "Is Lead Hot?": {
      "main": [
        [
          {
            "node": "Notify Agent for Hot Lead",
            "type": "main",
            "index": 0
          },
          {
            "node": "Notify Agent via Slack",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Has Lead Email?": {
      "main": [
        [
          {
            "node": "Send Acknowledgment to Lead",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "HubSpot: Upsert Contact",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse AI Output": {
      "main": [
        [
          {
            "node": "Has Lead Email?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Full Email": {
      "main": [
        [
          {
            "node": "Valid Lead Email?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Valid Lead Email?": {
      "main": [
        [
          {
            "node": "Extract Email Metadata",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HubSpot: Create Deal": {
      "main": [
        [
          {
            "node": "Log to Lead Parser Sheet",
            "type": "main",
            "index": 0
          },
          {
            "node": "Airtable: Create Lead Record",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Email Metadata": {
      "main": [
        [
          {
            "node": "Parse Email & Qualify Lead",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HubSpot: Upsert Contact": {
      "main": [
        [
          {
            "node": "HubSpot: Create Deal",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "New Lead Email Received": {
      "main": [
        [
          {
            "node": "Fetch Full Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Log to Lead Parser Sheet": {
      "main": [
        [
          {
            "node": "Is Lead Hot?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Store Airtable Record ID": {
      "main": [
        [
          {
            "node": "Is Lead Hot?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Notify Agent for Hot Lead": {
      "main": [
        [
          {
            "node": "Update Row: Agent Notified",
            "type": "main",
            "index": 0
          },
          {
            "node": "Airtable: Update Agent Notified",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Email & Qualify Lead": {
      "main": [
        [
          {
            "node": "Parse AI Output",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Acknowledgment to Lead": {
      "main": [
        [
          {
            "node": "HubSpot: Upsert Contact",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Airtable: Create Lead Record": {
      "main": [
        [
          {
            "node": "Store Airtable Record ID",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

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

About this workflow

When a property portal sends a lead notification to your Gmail, this workflow parses the email with Gemini AI, qualifies the lead, sends an instant acknowledgment, creates a HubSpot contact and deal in the right pipeline stage, and alerts you for hot leads. A lead notification…

Source: https://n8n.io/workflows/17409/ — original creator credit. Request a take-down →

More CRM & Sales workflows → · Browse all categories →

Related workflows

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

CRM & Sales

Who is this for? Event sales teams & conference organizers processing 100+ sponsor/partner emails weekly who need instant lead qualification, Salesforce automation, & pipeline analytics. _

Sentiment Analysis, Gmail, Gmail Trigger +8
CRM & Sales

Email Sentiment Router for Event Sales Leads

Sentiment Analysis, Gmail, Gmail Trigger +8
CRM & Sales

This template is perfect for: Marketing Teams looking to automatically qualify inbound leads from campaigns Sales Teams wanting to prioritize high-value prospects instantly Agencies offering lead qual

Form Trigger, Slack, OpenAI +5
CRM & Sales

When a seller asks what their home is worth, this workflow generates a professional CMA-lite valuation report in Google Docs using Gemini AI, emails them the link within minutes, creates a HubSpot dea

Typeform Trigger, Google Gemini, Google Docs +5
CRM & Sales

It extracts key business information using AI, scores the lead based on your ideal customer profile, creates CRM records, notifies your team on Slack, and logs all activity—including failures—to Googl

Gmail Trigger, HubSpot, Salesforce +3