Stop Copy-Pasting LinkedIn URLs: How to Enrich Contacts in Bulk from Google Sheets
Manual LinkedIn contact research doesn't scale. Here's how to enrich hundreds of LinkedIn profile URLs with emails and phone numbers in one batch run — inside your existing spreadsheet.
The pattern is always the same: a spreadsheet with hundreds of LinkedIn URLs, someone opening each one, clicking “Contact info,” writing down whatever’s visible, closing the tab, moving to the next row.
At 2 minutes per profile, 500 rows takes 17 hours. At 5 minutes (realistic for someone who actually reads the profile), it’s 42 hours.
There’s a better way. This post explains how to do bulk LinkedIn contact enrichment without leaving Google Sheets, without writing code, and without an expensive platform subscription.
The Manual Workflow and Why It Fails at Scale
Most teams start with a manual workflow because it works for small lists:
- Export a LinkedIn search to a spreadsheet
- Open each profile individually
- Copy the email from the Contact Info section (if visible)
- Paste into the spreadsheet
- Move to the next row
This breaks down for several reasons:
LinkedIn hides most emails. Contact info is only visible on first-degree connections, and even then, many people don’t publish their email. The manual method returns results for maybe 20–30% of a typical outbound list.
It doesn’t scale. A list of 50 contacts is manageable. A list of 300 takes days. A list of 1,000 is practically impossible to do manually.
It’s inconsistent. Different people copy data in different formats. Phone numbers, email formats, and data quality vary across the spreadsheet.
It blocks the person doing it. Manual research ties up a human for hours on work that should be automated.
What Bulk Enrichment Actually Does
B2B enrichment providers maintain large databases of professional contact information, indexed by LinkedIn profile URL. When you submit a URL, they return the email and phone number associated with that profile in their database.
This is not live LinkedIn scraping. It’s a database lookup against pre-indexed contact data. The match rate depends on how comprehensively the provider has indexed the profiles on your list.
The LinkedIn Enricher add-on connects these providers directly to Google Sheets. You select your URL column, click Enrich, and the add-on writes results back into your sheet row by row.
Setting Up Bulk Enrichment in Google Sheets
What You Need
- A Google Sheet with LinkedIn profile URLs in one column
- API keys from Datagma, LeadMagic, or both
- The LinkedIn Enricher add-on installed
Preparation Checklist
Before running a bulk enrichment, do this first:
[ ] Confirm all URLs are profile URLs (linkedin.com/in/...), not company pages
[ ] Remove duplicate rows (Data → Data cleanup → Remove duplicates)
[ ] Filter out blank cells in the URL column
[ ] If re-running a partial list, filter to only unenriched rows
[ ] Have at least one valid API key entered and tested in Settings
Running the Batch
- Open LinkedIn Enricher from Add-ons → LinkedIn Enricher → Open
- Settings tab: Enter and test API keys
- Enrich tab: Select the LinkedIn URL column
- Choose primary provider (Datagma or LeadMagic)
- Enable fallback if you have both keys
- Enable “Skip already-enriched rows” on any re-runs
- Click Enrich
The progress bar updates as each row completes. For a 500-row list, expect 6–10 minutes with both providers enabled.
Before and After: The Numbers That Change
Here’s what bulk enrichment looks like on a realistic 300-row list:
| Metric | Manual method | Bulk enrichment |
|---|---|---|
| Time to complete | 8–10 hours | 4–6 minutes |
| Emails found (est.) | ~20–30% | ~60–75% |
| Consistency | Variable (human error) | Uniform format |
| Phone numbers | Rarely collected | Returned automatically |
| Re-enrichable | No (manual effort again) | Yes (click Enrich again) |
| Credit cost | Human labor time | Per-row API credits |
The email hit rate from bulk enrichment far exceeds what manual contact-info clicking returns, because providers have access to data beyond what LinkedIn displays publicly.
Handling Results After the Run
After a bulk run, your sheet will have new columns for email, phone, provider, and timestamp. Here’s how to work through the results:
Filter by status. Sort by the email column — rows with emails are ready for outreach. Rows without emails need a different approach.
Segment by provider. If you have rows where Datagma found an email but LeadMagic didn’t (or vice versa), you can see which provider performed better on your specific list composition.
Verify before sending. Enrichment provides contact data as it was indexed. People change jobs. For any list older than 30 days, run email verification before outreach to remove stale addresses.
Queue the not-found rows. Rows with no email found should be saved separately. You can re-enrich them in 60–90 days (providers update databases), contact via LinkedIn, or enrich using a domain+name approach.
What Bulk Enrichment Won’t Do
Be clear on the limitations before building a workflow around this:
It won’t find every email. Hit rates of 65–75% on a good list mean 25–35% of rows won’t return results. This is a data coverage issue, not a tool limitation.
It won’t work on company pages. The enrichment works on individual profile URLs only.
It won’t replace verification. Finding an email address doesn’t mean it’s valid today. Always verify before sending at scale.
It won’t handle GDPR for you. If you’re enriching and contacting EU residents, you need a lawful basis for processing. Enrichment doesn’t change your compliance obligations — see our LinkedIn enrichment and GDPR guide →.
Cost vs. Value Calculation
Enrichment providers charge per lookup (typically $0.01–$0.10 per row depending on plan). For a 500-row batch with 70% hit rate:
- Lookups consumed: 500 primary + ~175 fallback = 675 total
- Emails found: ~350
- Approximate cost at $0.05/lookup: ~$34
- Cost per email found: ~$0.10
Compare this to the human labor cost of 500 manual lookups at even minimum wage — the math strongly favors automation for any list over 50 rows.
The break-even calculation shifts further toward bulk enrichment when you factor in the higher email yield (providers surface emails that aren’t publicly visible on LinkedIn).
For a deeper look at provider comparison, read Datagma vs LeadMagic: Which Found More Emails on Our Test List? →
Ready to stop doing this manually? LinkedIn Profile Enricher for Google Sheets →