🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Google Sheets + Apify: LinkedIn URLs, matched fast

Lisa Granqvist Partner Workflow Automation Expert

You’ve got a list of company names. What you need is the right LinkedIn company URL for each one. And somehow that turns into tabs everywhere, mismatched pages, and a spreadsheet you don’t fully trust.

This LinkedIn URL finder automation hits sales ops first, honestly. But recruiters and growth marketers run into the same mess when they’re prepping outreach lists or cleaning CRM data. The outcome is simple: verified company LinkedIn URLs, generated in bulk, straight from Google Sheets.

Below, you’ll see how the workflow runs, what you get out of it, and what to watch for so you don’t waste an afternoon on small setup mistakes.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Google Sheets + Apify: LinkedIn URLs, matched fast

The Problem: Company names don’t map cleanly to LinkedIn

“Find the LinkedIn URL” sounds like a quick task until you do it 50 times. You search, you click, you discover three companies with the same name, and you pick the one that “looks right.” Later, outreach bounces because you scraped the wrong page. Or your CRM ends up with a mix of /company/ URLs, personal profiles, and dead links. The worst part is the mental load: you’re constantly second-guessing, and you still don’t have a consistent list you can build on.

It adds up fast. Here’s where it breaks down in real teams.

  • Manual lookups steal about 5 minutes per company, and lists rarely stay small.
  • Two people can “verify” the same company and still pick different LinkedIn pages.
  • One wrong URL in a sequence can derail personalization and make outreach feel sloppy.
  • When the sheet isn’t consistent, every downstream tool (CRM, enrichment, ads) becomes harder to trust.

The Solution: Match LinkedIn company URLs from Google Sheets

This workflow turns a plain Google Sheet of company names into a fresh sheet populated with matched LinkedIn company URLs, using Apify’s LinkedIn Company URL Finder actor. You start with a tab called “companies” (one company name per row). When you run the workflow, n8n pulls those rows, prepares the payload Apify expects, and sends the names to Apify for resolution. Apify returns the best match for each company name, and n8n writes the results into a new output sheet. No tab-hopping. No copy-paste. And you get a clean, reusable source for outreach, CRM cleanup, or account research.

The workflow starts with a manual run, so you control when it executes. In the middle, it merges the “source sheet” and “output sheet” branches, then launches Apify and retrieves results. Finally, it appends the matched LinkedIn URLs back into Google Sheets so your list stays centralized.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you’re prepping an outbound list of 120 target accounts for a campaign. Manually, even a “quick” LinkedIn lookup takes about 5 minutes per company once you factor in ambiguity and checking you grabbed the official page, which is roughly 10 hours of tedious work. With this workflow, you paste those 120 names into the “companies” tab, run the automation, and let Apify resolve them while n8n writes results to a new sheet. Your hands-on time is closer to 15 minutes, plus whatever time you spend spot-checking a few edge cases.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets for your input list and output results.
  • Apify to resolve company names to LinkedIn URLs.
  • Apify API token (get it from Apify Console → Settings → Integrations).

Skill level: Beginner. You’ll connect two accounts, paste a Google Sheet URL, and run the workflow.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

You trigger the run. It starts with a manual click in n8n, which makes it great for list cleanups you do weekly or before a campaign.

Your sheet is read and an output sheet is prepared. n8n uses the Google Sheets nodes to pull your “companies” tab, then generates a separate sheet for clean output so you keep an untouched source list.

Company names are packaged and sent to Apify. A small code step prepares the payload, then Apify runs the LinkedIn Company URL Finder actor and returns the best match it can find for each row.

Results are written back to Google Sheets. n8n retrieves the actor results and appends the LinkedIn company URLs into the output sheet, ready for outreach, enrichment, or CRM updates.

You can easily modify the input columns to include extra context (like country or website) based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Manual Trigger

This workflow starts on demand, so you’ll use the manual trigger to run it when ready.

  1. Add or open Manual Start Trigger as the entry point.
  2. Leave default settings as-is for manual execution.

Step 2: Connect Google Sheets and Set Source Inputs

Define the source spreadsheet and ensure all Google Sheets nodes can access it.

  1. Open Assign Sheet Source and set google_sheet_url to your spreadsheet URL (replace xxxxxxxxxxxx with the actual link).
  2. In Assign Sheet Source, set google_sheet_name to companies (or change to your sheet tab name).
  3. Open Fetch Source Records and confirm Sheet Name uses {{ $json.google_sheet_name }} and Document ID uses {{ $json.google_sheet_url }}.
  4. Credential Required: Connect your googleSheetsOAuth2Api credentials in Fetch Source Records.
  5. Open Generate Output Sheet and set Operation to create and Title to =company-urls-{{new Date().format('dd/mm-HH:mm')}}.
  6. Credential Required: Connect your googleSheetsOAuth2Api credentials in Generate Output Sheet.

Assign Sheet Source outputs to both Generate Output Sheet and Fetch Source Records in parallel, so both the output sheet and source records are prepared at the same time.

⚠️ Common Pitfall: If the google_sheet_url value is left as a placeholder, Fetch Source Records and Generate Output Sheet will fail to access your spreadsheet.

Step 3: Set Up the Payload and Branch Synchronization

The workflow merges the sheet creation and data fetch paths, then prepares a query list for Apify.

  1. Ensure Synchronize Branches is connected to both Generate Output Sheet and Fetch Source Records.
  2. Open Prepare Apify Payload and keep the JavaScript code that builds queries from Fetch Source Records:

let listOfCompanies = ''
for (const item of $('Fetch Source Records').all()) {
listOfCompanies += `\n${item.json.name}`
}

return {
json: {
queries : listOfCompanies
}
}

Ensure your source sheet has a name column, since Prepare Apify Payload reads item.json.name.

Step 4: Configure Apify Execution and Results Retrieval

Apify runs the LinkedIn company URL lookup and returns dataset results for storage.

  1. Open Launch Apify Actor and confirm Actor Source is store with actor ID 9X6Pju8NeHNTvzRxF.
  2. Set Custom Body to {{ $json }} in Launch Apify Actor to pass the queries.
  3. Credential Required: Connect your apifyApi credentials in Launch Apify Actor.
  4. Open Retrieve Apify Results and set Resource to Datasets and Dataset ID to {{ $json.defaultDatasetId }}.
  5. Credential Required: Connect your apifyApi credentials in Retrieve Apify Results.

Step 5: Configure Output Writing to Google Sheets

Results are appended to the newly created output sheet in your Google Sheets file.

  1. Open Append Results to Sheet and set Operation to append.
  2. Set Sheet Name (by ID) to {{ $('Generate Output Sheet').first().json.sheetId }}.
  3. Set Document ID to {{ $('Assign Sheet Source').first().json.google_sheet_url }}.
  4. Credential Required: Connect your googleSheetsOAuth2Api credentials in Append Results to Sheet.

Step 6: Test and Activate Your Workflow

Run a manual test to confirm the data flows from Google Sheets to Apify and back to the output sheet.

  1. Click Execute Workflow on Manual Start Trigger to run the workflow.
  2. Verify Generate Output Sheet creates a new tab with a name like company-urls-{{new Date().format('dd/mm-HH:mm')}}.
  3. Check that Append Results to Sheet writes Apify results into the new output sheet.
  4. Once confirmed, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Sheets credentials can expire or lack write permissions. If rows aren’t being created, check the connected Google account and the spreadsheet sharing settings first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Apify runs can return unexpected matches when company names are too generic. Add a qualifier in your sheet (like “Inc” vs “Ltd” or a website column) and tweak the payload so the actor has better context.

Frequently Asked Questions

How long does it take to set up this LinkedIn URL finder automation?

About 20 minutes if your Google Sheets and Apify accounts are ready.

Do I need coding skills to automate LinkedIn company URL matching?

No. You’ll mainly connect accounts and paste in your Google Sheet URL. The workflow already includes the logic that formats the Apify request.

Is n8n free to use for this LinkedIn URL finder workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Apify usage costs based on how many companies you process.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this LinkedIn URL finder automation for adding a “confidence” column?

Yes, but you’ll need to use what Apify returns (or add your own rule). Common tweaks include updating the “Prepare Apify Payload” code step to send extra context (like website or country), adding an If check to flag blank or suspicious results, and writing a “needs review” column alongside the URL in the Append Results to Sheet step.

Why is my Google Sheets connection failing in this workflow?

Most of the time it’s permissions: the connected Google account can read the sheet but can’t create a new sheet or append rows. Reconnect Google Sheets credentials in n8n, then verify the spreadsheet is shared correctly and the workflow is pointing at the right tab name (the template expects “companies” unless you changed it). If it still fails, check if the sheet URL in the “Set google sheet URL & original sheet name” step is an old link from another workspace.

How many companies can this LinkedIn URL finder automation handle?

Hundreds at a time is realistic for most teams, then it depends on your n8n plan, your server (if self-hosted), and Apify run limits.

Is this LinkedIn URL finder automation better than using Zapier or Make?

Often, yes, because this is more than a simple “A to B” zap. n8n makes it easier to create an output sheet, merge branches, and handle looping without paying extra for every conditional path. Self-hosting is another big deal if you’re doing this frequently and don’t want to think about task limits. Zapier or Make can still be fine for tiny lists, especially if you prefer a very guided UI. If you’re on the fence, Talk to an automation expert and you’ll get a straight answer based on your volume.

Once this is running, your spreadsheet becomes a reliable source instead of a “maybe” list. Set it up, run it when you need it, and spend your time on outreach that actually moves deals.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal