AutomationFlowsEmail & Gmail › Sync Hubspot Contacts with Linkedin Urls, Detect Changes & Send Gmail Alerts

Sync Hubspot Contacts with Linkedin Urls, Detect Changes & Send Gmail Alerts

ByPollupAI @Pollup on n8n.io

Automate CSV imports into HubSpot without the mess. Powered by n8n. Supercharged by Pollup AI.

Event trigger★★★★★ complexity46 nodesHTTP RequestExecute Workflow TriggerGmailGoogle Sheets
Email & Gmail Trigger: Event Nodes: 46 Complexity: ★★★★★ Added:

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

This workflow follows the Execute Workflow Trigger → 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
{
  "nodes": [
    {
      "id": "2804a082-c17b-482f-828d-901dab7e7a11",
      "name": "When clicking \u2018Test workflow\u2019",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -160,
        40
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "58d51340-5246-4089-ae63-f16ff4be184e",
      "name": "Get list of owners",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        280,
        40
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "335ffd8c-68fa-4d55-85e9-462963a8a291",
      "name": "Get list of clients for owner",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        280,
        575
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "5d116139-1764-4d3a-8696-d280fb7e9d8f",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -210,
        -260
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "a8a15bd4-5a46-4f70-87bd-4db7170b4928",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        720,
        575
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "eda30bd9-95bb-43d4-8981-479036103dd1",
      "name": "Edit",
      "type": "n8n-nodes-base.set",
      "position": [
        60,
        575
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "4c6c8217-6610-413e-8b1c-185a96e44882",
      "name": "Increment Page",
      "type": "n8n-nodes-base.set",
      "position": [
        500,
        500
      ],
      "parameters": {},
      "executeOnce": true,
      "typeVersion": 1
    },
    {
      "id": "58f53fe6-36a4-4385-ba93-e15dd589c0a4",
      "name": "Split Out1",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1160,
        575
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "c92983ba-bef3-463a-a6de-8f205822f359",
      "name": "Merge al the entries",
      "type": "n8n-nodes-base.code",
      "position": [
        940,
        575
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "68c51fbd-3845-4eb2-9204-d78cc30413bf",
      "name": "If linkedin url is empty",
      "type": "n8n-nodes-base.if",
      "position": [
        1820,
        40
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "18e4e4bd-4039-4770-a3d0-13edafe6103c",
      "name": "if new post",
      "type": "n8n-nodes-base.if",
      "position": [
        3580,
        40
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "a5623af7-6fba-43b0-be50-c9d3c52aba32",
      "name": "Get list of clients",
      "type": "n8n-nodes-base.executeWorkflow",
      "position": [
        940,
        40
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "9f771153-6b83-4ac0-b642-ee2d4b65a41c",
      "name": "When Executed by Another Workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        -160,
        575
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "437dc3e5-0340-41ce-aea1-36749bd054ad",
      "name": "Get last post",
      "type": "n8n-nodes-base.executeWorkflow",
      "position": [
        3140,
        40
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "a0dda2f2-cb89-4557-8cfc-5e3a01e34637",
      "name": "Gmail",
      "type": "n8n-nodes-base.gmail",
      "position": [
        4680,
        140
      ],
      "parameters": {},
      "typeVersion": 2.1
    },
    {
      "id": "99911831-e603-454c-b533-2e387f2008c4",
      "name": "Search for user by link",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Search by Name and company",
      "position": [
        2920,
        140
      ],
      "parameters": {},
      "executeOnce": false,
      "notesInFlow": true,
      "typeVersion": 4.2,
      "alwaysOutputData": false
    },
    {
      "id": "903f6be4-b468-488c-aa41-50f60ee92bcb",
      "name": "Do nothing",
      "type": "n8n-nodes-base.noOp",
      "position": [
        2480,
        -160
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "695202d6-60bd-4788-b029-0c03a9e3c89a",
      "name": "Merge profileURL",
      "type": "n8n-nodes-base.code",
      "position": [
        2700,
        140
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "ead5d235-7f73-41e4-86d3-48ad7d4cfa8d",
      "name": "Set last_post",
      "type": "n8n-nodes-base.set",
      "position": [
        3360,
        40
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "a89746c8-5fb7-4c69-930f-d0f451bcef54",
      "name": "Set last_position",
      "type": "n8n-nodes-base.set",
      "position": [
        3360,
        240
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "467aa5a3-c9f5-407f-8571-e9ba333109e2",
      "name": "if new position",
      "type": "n8n-nodes-base.if",
      "position": [
        3580,
        240
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "f6456ca1-bb31-4bf3-8175-7f8b5f4a65bb",
      "name": "Set data here",
      "type": "n8n-nodes-base.set",
      "position": [
        60,
        40
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "f904c3fb-9320-4b5e-92af-c7cc697eb9dc",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        220,
        -260
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "5a499d0c-bbe5-4041-a082-6111658bf155",
      "name": "Change this for testing",
      "type": "n8n-nodes-base.filter",
      "position": [
        1160,
        40
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "089690f8-ddf5-46e4-933c-152095ea02ac",
      "name": "Create entry with email",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1380,
        40
      ],
      "parameters": {},
      "typeVersion": 4.5,
      "alwaysOutputData": true
    },
    {
      "id": "60617dc9-021b-41be-b7bf-0816bddba05e",
      "name": "Get rows from document",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1600,
        40
      ],
      "parameters": {},
      "typeVersion": 4.5,
      "alwaysOutputData": true
    },
    {
      "id": "21c2bbd5-75f1-4c80-a4ec-4c2870890fcf",
      "name": "Search for user profile by names",
      "type": "n8n-nodes-base.httpRequest",
      "notes": "Search by Name and company",
      "position": [
        2040,
        -60
      ],
      "parameters": {},
      "executeOnce": false,
      "notesInFlow": true,
      "typeVersion": 4.2,
      "alwaysOutputData": false
    },
    {
      "id": "1a6f6571-a89a-4e6e-82a5-c239661d6131",
      "name": "Profile URL not found?",
      "type": "n8n-nodes-base.if",
      "position": [
        2260,
        -60
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "2811ca64-1e43-4934-abc2-f1a746b2cf68",
      "name": "Set the profile URL",
      "type": "n8n-nodes-base.set",
      "position": [
        2480,
        40
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "d79a3896-e5b3-4b63-ad04-848f34db8100",
      "name": "Set the profile URL1",
      "type": "n8n-nodes-base.set",
      "position": [
        2480,
        240
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "73683bde-7431-47e2-b70f-8e0dd2725c84",
      "name": "Update last post",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3800,
        40
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "71f66801-3b12-4633-a95b-c4c8788117bd",
      "name": "Updates last position",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        3800,
        240
      ],
      "parameters": {},
      "typeVersion": 4.5
    },
    {
      "id": "d67c1106-5d91-4d00-980b-1b3578a1c86f",
      "name": "Set post_updated",
      "type": "n8n-nodes-base.set",
      "position": [
        4020,
        40
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "ad574631-3799-4f02-96ff-8683dc944331",
      "name": "Set position_updated",
      "type": "n8n-nodes-base.set",
      "position": [
        4020,
        240
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "157a5e8f-7b42-4115-91a2-2f204cd6d9f6",
      "name": "Generate the email text",
      "type": "n8n-nodes-base.code",
      "position": [
        4460,
        140
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "0735e123-47ed-4b3c-9aa8-cc7d2f982e4b",
      "name": "Merge on email",
      "type": "n8n-nodes-base.merge",
      "position": [
        4240,
        140
      ],
      "parameters": {},
      "typeVersion": 3.1
    },
    {
      "id": "88717813-9e07-4984-8e8b-7772f7c7a0e7",
      "name": "Split Out owners",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        500,
        40
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "5799995c-659e-4732-a35b-893692d95509",
      "name": "Get current owner",
      "type": "n8n-nodes-base.filter",
      "position": [
        720,
        40
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "637b821f-8051-4e91-a58e-85dc7e136467",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        880,
        -260
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "3bda132e-73a3-4af0-bb43-ff52f31f5a90",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1120,
        -260
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "13fb80f1-d685-4998-a534-41a0f944b6e8",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1320,
        -260
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "54a51950-a284-435e-8a2b-bdc0ebace3c9",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3080,
        -240
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "4b197665-b31c-4fa2-8934-5b72468ca2e9",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1960,
        -240
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "665fb602-dc0a-432f-a087-ce6097f58937",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4200,
        -240
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d6789f6a-aa62-44fd-9314-fc0157b6dcd8",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -220,
        400
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d9a5cc09-7e4f-488a-a3dc-6a27361d9d0b",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        -480
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Merge al the entries",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Get list of clients for owner",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit": {
      "main": [
        [
          {
            "node": "Get list of clients for owner",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out1": {
      "main": [
        []
      ]
    },
    "if new post": {
      "main": [
        [
          {
            "node": "Update last post",
            "type": "main",
            "index": 0
          }
        ],
        []
      ]
    },
    "Get last post": {
      "main": [
        [
          {
            "node": "Set last_post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set data here": {
      "main": [
        [
          {
            "node": "Get list of owners",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set last_post": {
      "main": [
        [
          {
            "node": "if new post",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Increment Page": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge on email": {
      "main": [
        [
          {
            "node": "Generate the email text",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "if new position": {
      "main": [
        [
          {
            "node": "Updates last position",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge profileURL": {
      "main": [
        [
          {
            "node": "Search for user by link",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set post_updated": {
      "main": [
        [
          {
            "node": "Merge on email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out owners": {
      "main": [
        [
          {
            "node": "Get current owner",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Update last post": {
      "main": [
        [
          {
            "node": "Set post_updated",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get current owner": {
      "main": [
        [
          {
            "node": "Get list of clients",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set last_position": {
      "main": [
        [
          {
            "node": "if new position",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get list of owners": {
      "main": [
        [
          {
            "node": "Split Out owners",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get list of clients": {
      "main": [
        [
          {
            "node": "Change this for testing",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set the profile URL": {
      "main": [
        [
          {
            "node": "Merge profileURL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge al the entries": {
      "main": [
        [
          {
            "node": "Split Out1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set position_updated": {
      "main": [
        [
          {
            "node": "Merge on email",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Set the profile URL1": {
      "main": [
        [
          {
            "node": "Merge profileURL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Updates last position": {
      "main": [
        [
          {
            "node": "Set position_updated",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get rows from document": {
      "main": [
        [
          {
            "node": "If linkedin url is empty",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Profile URL not found?": {
      "main": [
        [
          {
            "node": "Do nothing",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Set the profile URL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Change this for testing": {
      "main": [
        [
          {
            "node": "Create entry with email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create entry with email": {
      "main": [
        [
          {
            "node": "Get rows from document",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate the email text": {
      "main": [
        [
          {
            "node": "Gmail",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search for user by link": {
      "main": [
        [
          {
            "node": "Get last post",
            "type": "main",
            "index": 0
          },
          {
            "node": "Set last_position",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If linkedin url is empty": {
      "main": [
        [
          {
            "node": "Search for user profile by names",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Set the profile URL1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get list of clients for owner": {
      "main": [
        [
          {
            "node": "Increment Page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Search for user profile by names": {
      "main": [
        [
          {
            "node": "Profile URL not found?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Edit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When clicking \u2018Test workflow\u2019": {
      "main": [
        [
          {
            "node": "Set data here",
            "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

Automate CSV imports into HubSpot without the mess. Powered by n8n. Supercharged by Pollup AI.

Source: https://n8n.io/workflows/3923/ — 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

Splitout Code. Uses manualTrigger, httpRequest, stickyNote, splitOut. Event-driven trigger; 46 nodes.

HTTP Request, Execute Workflow Trigger, Gmail +1
Email & Gmail

Automatically processes new orders added to Google Sheets. Small orders are approved instantly; large orders trigger an HTML email with one-click Approve / Reject links — each handled by an independen

Google Sheets Trigger, Google Sheets, Gmail +1
Email & Gmail

Code Filter. Uses googleSheets, gmail, stickyNote, executeWorkflowTrigger. Event-driven trigger; 32 nodes.

Google Sheets, Gmail, Execute Workflow Trigger
Email & Gmail

This n8n workflow enables teams to automate and standardize multi-step onboarding or messaging workflows using Google Sheets, Forms, Gmail, and dynamic logic powered by Code and Switch nodes. It ensur

Google Sheets, Form, Execute Workflow Trigger +2
Email & Gmail

Submit any YouTube, Vimeo, or Zoom webinar URL using a simple form and the workflow handles everything from there. It runs a two-phase pipeline: first identifying the top viral moments in your video w

Form Trigger, HTTP Request, Google Sheets +1