Playbook

How to send LinkedIn leads into HeyReach campaigns

Six ways to get leads into HeyReach: search URL, keyword search, Sales Navigator, CSV, post reactors, and Clay or API. The real steps, the caps, and where each one breaks.

Published Sep 27, 202611 min read
On this page
  1. The six import paths, side by side
  2. Which import method should you use?
  3. How do you add leads to a campaign that's already running?
  4. Where does this break?
  5. What does it cost?
  6. Where Saava fits
  7. FAQ
Key takeaways
  • HeyReach imports leads through six routes, and all of them start in the same place: Leads, then Add Leads, then pick the source, name the list, choose the sending account, and start the import.
  • The default cap is 1,000 leads per LinkedIn sender per import, and Sales Navigator itself stops returning results after 2,500 leads, so large audiences have to be sliced into filtered segments.
  • CSV is the only method that can push leads into a campaign that is already running, which makes it the fallback every operator ends up using.
  • Custom variables pushed from Clay or the API do not appear in the HeyReach message composer, because they are created at runtime, so the variable name in Clay must match the sequence text character for character.
  • The import is the easy part, and the part that decides reply rate is which 300 people you put in the list rather than which of the six buttons you clicked.

HeyReach takes leads six ways: paste a LinkedIn search URL, run a keyword search inside HeyReach, paste a Sales Navigator search or saved list URL, upload a CSV, pull the reactors from a LinkedIn post, or push leads programmatically from Clay, the API, Zapier, Make or n8n. Every route starts the same: Leads, then Add Leads, pick the source, name the list, select the LinkedIn sender, then Start importing. Default cap is 1,000 leads per sender per import. Only CSV can add leads to a campaign that is already running.

The six import paths, side by side

All figures below are from HeyReach's own documentation as of 2026. Setup times are my own estimates from running these imports, not vendor claims.

Method Needs Sales Navigator Hard cap Supports custom variables Rough setup time Best for
LinkedIn search URL No 1,000 per sender per import No 3 to 5 min Quick lists from free-account search
Keyword search inside HeyReach No 1,000 per sender per import No 3 to 5 min When you do not want a second browser tab open
Sales Navigator search or saved list Yes 2,500 per search (LinkedIn limit), 1,000 per sender per import No 5 to 10 min Filtered ICP lists, activity filters, Boolean
CSV upload No Not published Yes, if mapped 10 to 30 min including cleanup Enriched lists, adding to a live campaign
LinkedIn post reactors No Not published No 2 to 3 min Warm, signal-based lists
Clay, API, Zapier, Make, n8n No Not published Yes, dynamic 30 to 90 min first time Continuous, always-on lead flow

Which import method should you use?

If you already have a good saved search, use the Sales Navigator route. If you do not pay for Sales Navigator, the keyword search inside HeyReach gets you most of the way. If your list came out of an enrichment step and carries icebreakers or custom fields, use CSV or Clay, because those are the only two that carry variables. If you want warm leads rather than filtered ones, use post reactors.

A blunt point before the steps: the import mechanic is not what decides your results. The list is. A 1,000-person Sales Navigator scrape and a 60-person reactor list both take about the same time to import and will not perform anything like each other. Work out who actually belongs in your ICP before you import anything.

Method 1: LinkedIn search bar, free account

Two sub-methods.

Extract by URL. Stay logged into LinkedIn in a separate browser tab. Filter your search results there. Copy the full URL from the address bar, not a shortened or truncated version, because an incomplete link fails the import. Then in HeyReach: Leads, Add Leads, LinkedIn Search Bar, name the list, select the LinkedIn sender associated with that search URL, paste the URL, Start importing. You land on an import progress screen and can leave it running in the background.

Search by keyword. Same menu, but you type keywords and filters directly into HeyReach's Search Query area, so no second tab is needed. Boolean strings are allowed. Filters include location, industry, current and past companies, and connection degree.

The cap on both: 1,000 leads per LinkedIn sender per import by default. HeyReach documents a workaround to exceed it. If you are running multiple senders, each sender carries its own allowance, which is the whole reason agencies use HeyReach in the first place. If you run client accounts this way, the operating model is covered in LinkedIn lead generation for agencies.

Method 2: Sales Navigator search or saved list

Connect the Sales Navigator account first. Go to LinkedIn Accounts in HeyReach, click Connect Account, and use the HeyReach Login option. During setup you choose Inbox Privacy: either track and import all LinkedIn conversations from the last 30 days, or track only conversations started from HeyReach. Pick the second one if the account has personal or unrelated threads in it.

Then build the search in Sales Navigator. Use the filters that actually narrow intent, such as activity level filters like "Posted on LinkedIn", Boolean title strings, and shared experiences. Copy the search results URL. In HeyReach, paste it, name the list, Start importing. Saved searches and saved lead lists work the same way.

The ceiling here is LinkedIn's, not HeyReach's. Sales Navigator returns a maximum of 2,500 leads per search, which is 100 pages of 25. Past that, results stop. The fix is to split the search: by headcount band, by geography, by seniority, then import each segment separately.

Method 3: CSV

Three fields are mandatory and must be populated on every row: LinkedIn profile URL, first name, last name. Rows missing any of them will not import cleanly.

CSV is also the only way to add leads to a campaign that is already running. You upload the file and map custom variables during import. Two things to know before you rely on it:

  • Export to CSV from HeyReach only returns HeyReach's default columns. Custom variables do not come back out. Keep your source file.
  • Variable names allow no spaces and no special characters other than hyphen and underscore. {AI_Icebreaker_1}, {complimentToTheProfile} and {websiteSummary} are valid. {AI Icebreaker 1} is not.

If the CSV came from a data vendor, clean it first. Bad rows cost you more than the import time, as covered in the hidden cost of bad LinkedIn data.

Method 4: LinkedIn post reactors

Leads, Add Leads, LinkedIn Post (Reactors), paste the post URL, select the LinkedIn account doing the import, name the list, Start importing. When it finishes you get every profile that reacted to that post.

This is the shortest path to a warm list in HeyReach, and it is the one most teams underuse. A reactor on a competitor's product post, a hiring post, or a funding announcement is a different prospect from a title match in a database. The full method, including which posts are worth harvesting and how to write to reactors without sounding like a stalker, is in turning post likes and comments into leads and in 7 LinkedIn engagement signals that predict buying intent.

One limitation: reactors only. Commenters are a separate and usually stronger signal, and this import path does not cover them.

Method 5: Clay

Map first name, last name and Personal LinkedIn URL correctly, then map your personalization fields. The custom field names in Clay must be an exact match to the variable text written into the HeyReach sequence. Run the column in Clay and the leads land in the sequence.

Turn on Clay's auto-update and every new row added to the table gets enriched and pushed to the campaign automatically. That turns HeyReach into an always-on destination rather than a batch tool.

Sender assignment: leave the LinkedIn accounts field empty and leads get distributed randomly across the senders running that campaign. Set it explicitly if a specific account owns a specific segment, which matters when one sender is the founder and the rest are SDRs.

The gotcha that eats an afternoon: variables pushed from Clay or the API do not appear as selectable options in the connection request or message composer. They are dynamic and do not exist yet when you build the campaign, so they are created at runtime. You type the variable name by hand and trust the mapping. Test with two leads before you fire 500. If you are weighing Clay as the front end of this stack, we wrote up the tradeoff in Saava vs Clay.

Method 6: API and webhooks

Find your API key and endpoints under Settings, API. Create leads or update campaigns by mapping firstName, lastName, LinkedInProfileUrl and email from the trigger app. HeyReach supports 20 or more webhook events as of 2026, covering things like new messages received, profile updates and campaign status changes. Traffic over Zapier webhooks runs on HTTPS.

Four Zap patterns HeyReach documents:

Workflow What it does
Calendly to HeyReach Every new meeting booked adds that contact to a LinkedIn sequence
Google Sheets to HeyReach New rows upload into campaigns automatically
HeyReach to Slack Notifies the channel when a prospect replies
HeyReach to HubSpot Syncs outreach replies into the CRM

Clay, n8n, Make and Zapier all work against the same API.

Method 7: a signal tool that pushes leads in

Some LinkedIn intelligence tools monitor engagement across your own content, competitor content and influencer content, then deliver the matching people straight into HeyReach campaigns. Traxy is one, with a delivery setting you switch to Auto. This is the same shape as the Clay route, just with the list-building step handled for you.

How do you add leads to a campaign that's already running?

CSV import, or the API and Clay push. The in-app LinkedIn search and Sales Navigator imports create a new lead list; CSV is the documented way to drop leads into an existing campaign, with variables mapped during the upload. Practically, this means most teams keep one "always on" campaign per segment and feed it, rather than launching a new campaign every Monday.

Where does this break?

  • Truncated URLs. A partial LinkedIn or Sales Navigator search link fails the import. Copy the whole address bar.
  • The 1,000 per sender cap. Split by sender or use the documented workaround. Do not assume a 4,000-row search imported in full.
  • The 2,500 Sales Navigator ceiling. Add a filter and run it as segments.
  • Variable name mismatch. One space, one capital letter out of place, and the message sends with a blank or a literal bracket string.
  • Export loses custom variables. Treat HeyReach as the sender, not the system of record.
  • Volume that outruns the account. Multi-account distribution raises your ceiling, it does not remove LinkedIn's per-account limits. Check the 2026 connection caps and warm-up rules before you set daily sends.

What does it cost?

Our research notes do not include HeyReach's current pricing, so we are not going to guess at a number. Check their pricing page. The costs that usually surprise people are elsewhere: Sales Navigator seats, enrichment credits burned on rows you never message, and the hours spent cleaning CSVs. For a sense of what a lead should cost you across channels, see the 2026 cost-per-lead benchmarks.

Where Saava fits

Saava is not a HeyReach plugin, and we do not claim a native push into HeyReach campaigns. Saava handles the half that happens before the import: watching LinkedIn for buying signals, scoring the people who show up against your ICP, and then sending outreach from a LinkedIn account you connect yourself. If HeyReach is already your sending layer and you like it, Saava's value to you is the list quality upstream, not replacing the sequencer. If you have not picked a sender yet, you can run both halves in Saava.

FAQ

Can I import more than 1,000 leads at once into HeyReach?

Not by default. HeyReach's documented limit is 1,000 leads per LinkedIn sender per import, and their help docs reference a workaround to go beyond it. The practical approach used by most teams is to split the audience across senders or across filtered segments and run several imports.

Do I need Sales Navigator to use HeyReach?

No. The keyword search inside HeyReach lets you apply location, industry, company and connection-degree filters with Boolean strings, and post reactor imports and CSV work on a free LinkedIn account. Sales Navigator adds filters you cannot get otherwise, such as activity filters like "Posted on LinkedIn", which is why signal-led teams still buy it.

Why don't my Clay variables show up in the HeyReach message editor?

Because they are dynamic. Variables pushed from Clay or the API are created at runtime after the campaign starts, so they do not exist when you are writing the sequence and cannot be picked from a dropdown. Type the variable name manually, match it exactly to the Clay custom field, and test on two leads first.

Can I add leads to a campaign that has already launched?

Yes, through CSV import with your custom variables mapped during upload, or by pushing leads in from Clay or the API. The in-app LinkedIn and Sales Navigator imports build a new lead list instead.

If you want the list-building half handled before anything reaches your sequencer, start a trial of Saava.

If you want this running for you instead of by hand, start a trial

Written by the Saava team

We build Saava, which watches LinkedIn engagement, job boards, company data and other public signals, scores the people behind them against your ideal customer, and hands you the ones worth contacting. What we write here comes from running outbound ourselves.

Reading about it is the slow way. Run it.