Convert Companies Who are Hiring Right Now into Your Sales Leads on LinkedIn | 36% Reply Rate Campaign

8 mins

Today, I’ll show you an outbound growth strategy that will help you generate dozens of leads on LinkedIn on a weekly basis. Here are some results of our clients who implemented it:

36.2% reply rate

17-20 leads/week

who are hiring right now

The whole idea is to reach out to companies who are hiring specialists in your niche right now.

For example:

  • If you’re a Python software agency, you want to reach out to companies that are hiring Python devs right now.
  • If you’re a design agency, reach out to companies that are looking for designers.
  • If you’re an SEO agency → companies who are looking for SEO specialists.
  • etc.

companies who are hiring right now

The reason is simple — these companies are sales-ready opportunities:

  • if they are hiring specialists → they have a budget and a need for this expertise
  • if they are doing it right now → they are ready to spend this budget
  • your next step → talk to them.

You can thus contact your target audience at the most relevant time 🚀

Today I’ll show you an entirely automated and personalized LinkedIn outreach process with templates you can steal (and adapt for your case 🤩)

For this growth strategy, we’ll imagine that we’re selling SEO services. BUT you can apply the same strategy to your business.

So, we’re an SEO agency that works with small/medium tech companies in the USA.

Step #1 Find companies that are hiring

So, we go on Glassdoor (one of the hugest job search websites) and find companies who are looking for SEO specialists right now.

generating sales leads on linkedin

We choose relevant filters, such as:

  • Industry (in our case, IT)
  • Size of the company
  • Seniority of a person they are looking for
  • “Marketing” function (so you don’t get Front End Developers, Designers, and so on in your search)

As a result, you have a list of tech companies who are looking for SEO Mid-level specialists in the USA.

Now we need to download this list!

Step #2 Scrape hiring companies 

Once you found the list of companies who are hiring right now, you need to scrape this data. And for this, we will use Apify.

It’s an amazing browser automation platform that requires 0 coding skills (that’s my level of coding 😂). Also, it allows people to create and share scripts for public use.

That’s exactly what we gonna do. We’ll use the Glassdoor scraping script made by an Apify user (we’re lucky someone else took care of this for us! 😅).

Note: for this type of scraping, you can use different tools, like Phantombuster or TexAu. But in this specific case, Apify has the most easy-to-use automation for Glassdoor.

Also, Apify is a platform with a huge Free plan. So feel free to create an account here.

  1. Go to Glassdoor account and copy the URL of the page with all applied filters.

  2. Now go to Apify and find Glassdoor script in the store

  3. Put it into Apify’s Glassdoor scraping script. Press “Save & Start”
    … a few moments later…
  4. Once it’s done — download the results as a CSV file. To do it, you should click on “Export results” and choose the export dataset format. And then click the “Download” button:

  5. Upload it to Google Drive and open it in Google Sheets:

As a result, you get a Google Sheet with companies who are looking for SEO specialists right now:

A few mins, and a FREE scraping automation is done.

It’s just the beginning of a real Growth Hack Magic 🧙‍♂️

Step #3 Find the right contacts

We have a list of companies, but now we need to find the right people to reach out. Here is the moment when the real magic enters the game.

Since for this example, we’re looking for small/medium companies (1-200 employees), we need to talk to the CEO of the company (you can change the title according to your outreach strategy).

Now I’ll show you how to get the CEO’s name and LinkedIn profiles directly in Google sheets!

We’ll use:

  1. Google Sheets (of course)
  2. Programmable Search Engine (to find Full name and LinkedIn Profile)
  3. Search Engine by Google
  4. AppScript (tool to add the script)
  5. The script I’ll share with you (I have 0 coding skills, so it was generated by Chat GPT 🤖. But it’s working, and I’m happy about it)

Note: You can do this for free with 100 searches (100 rows in Google Sheets) per day. More it’s paid, but super cheap.

Now we need to keep only the columns we need (in this case, I left the domain, Company Name, JobTitle of the person they are looking for, and the URL to the job description).

And we also add 2 more columns:

  • CEO
  • LinkedIn profile

Below, I’ll share with you the script you need to add to App Script.

1. So now pls click on “Extensions” → “App Script”

2. Delete everything you have here, so it’s blank:

3. Copy and paste the code I give you below.

Note: You will need to change the “YOUR API” & “YOUR KEY” parameters to yours (I’ll show how to do that):

* Find a LinkedIn profile from company name and job title
* @param {string} companyName company where your prospect is working
* @param {string} [jobTitle] job you are targeting, default value is "CEO"
* @return if found the LinkedIn URL and name of the prospect
* @customfunction
function getPerson(companyName, jobTitle = "CEO") {
// Get a Custom Search API Key
// Follow this link to get it
var key = "YOUR API";

// Create a Programmable Search Engine
// Follow this link to create it ->
let searchEngineId = "YOUR KEY";

// Save your project and it's ready to use
let search = " intitle:" + jobTitle + " " + companyName;

// Call Google Custom Search API
var options = {
method: "get",
contentType: "application/json",
var response = UrlFetchApp.fetch(
"" +
key +
"&q=" +
search +
"&cx=" +

// Parse LinkedIn URL and name
var url = JSON.parse(response).items[0].formattedUrl;
var title = JSON.parse(response).items[0].title.split("-")[0];

// Return the results in a 2D array
return [[title, url]];

So it looks like this:

4. Now you need to add “YOUR API” & “YOUR KEY”:

Don’t fret! Even though it might seem as confusing as a Rubik’s Cube, fear not. All you need to do is follow the simple steps below and you’ll get the result:

Click on “Get a key” to generate a new API. If you need to create a project, do it.

And create a new Search Engine, as I show below:

  1. Click on “Basic” on the left menu and copy Search Engine ID. It’ll be “YOUR KEY”

  2. Now update this code with your API and Search Engine KEY. And click the “Save” button.

  3. Once you did it, let’s get back to Google Sheets

Add the formula 


where “NAME OF THE COMPANY” is a cell with the name of the company (in my case it’s A2, A3 … A24) and click “ENTER”:

In a few seconds, this function will return your CEO’s Name and the LinkedIn account URL of this person:

Apply this function to all the data you have:

Boom! 2 mins set up, and the real magic happens!

Again, thanks ChatGPT for creating this code 😅

I always say “Thank you” so if the uprising of the machines happens, I will be pardoned 🙏

Let’s go to the outreach part and set up a campaign on LinkedIn!

Step #4 Extra personalization for your outreach

Cold outreach is always about personalization. You definitely don’t want to be this spammer:

In your cold messages, always follow 2 fundamental principles:

  1. Be relevant
  2. Talk about them

The fact that we’re reaching out to companies who need SEO (in your case, another service) right now shows that we’re relevant. Our “Connection message” will look like this:

But I can show you some more magic to personalize your outreach, so you will talk fully about THEM and not about YOU. And your follow-ups will identify (in our case SEO) problems and pains they have.

The idea is to check some basic SEO parameters, for example, the website speed, and suggest the plan for them:

Thanks for connecting! I checked out your website and a super basic parameter — speed on mobile devices. It turned out to be 45, meaning your website isn’t optimized for mobile devices. Do you have time tomorrow to discuss how we can help you boost organic traffic?

Feels much more personalized, isn’t it?

Now I’ll show you how to get this “MobileSpeed” parameter into your Google Sheets. For this, we’ll use It shows how fast a website is, in our case (we’re SEO agency in this guide) it’s crucial in terms of SEO impact.

So we’ll use PageSpeed’s API to find this score for a bunch of Company Websites we have.

We need to open AppScript (again) and paste the code below. Just add a new code right after the previous one:

function getMobileScore(url) {
// Replace YOUR_API_KEY_HERE with your actual API key
var apiKey = 'YOUR API';

// Check that the URL parameter is a string
if (typeof url !== 'string') {
return null;

// Add the protocol if it's missing
if (!/^https?:\/\//i.test(url)) {
url = 'https://' + url;

// Build the API request URL
var endpoint = '';
var params = {
'url': url,
'strategy': 'mobile',
'key': apiKey

// Send the API request and parse the JSON response
var response = UrlFetchApp.fetch(endpoint + '?' + encodeQueryData(params), {muteHttpExceptions: true});
var content = response.getContentText();
var data = JSON.parse(content);

// Check that the lighthouseResult.categories property exists
if (!data.lighthouseResult || !data.lighthouseResult.categories) {
return null;

// Get the mobile performance score and return it
var score = data.lighthouseResult.categories.performance.score * 100;
return score;

function encodeQueryData(data) {
var ret = [];
for (var d in data) {
ret.push(encodeURIComponent(d) + '=' + encodeURIComponent(data[d]));
return ret.join('&');

Now you need to add the API Key from PageSpeed, so go here

and click on “Get a Key” and update ‘YOUR API’ in the script above with this Key.

Let’s get back to the Google Sheets and use this =getMobileScore(Cell) formula to get a MobileScore:

Also, I decided to add a comment based on this score. For example, if the score is less than 90, I want to send this message as a comment:

“your website isn’t optimized for mobile devices”

if it’s >90:

“It’s not bad, but we can work on better SEO optimization”

So I used this formula in the next column:

=IF(CELL<90, “your website isn’t optimized for mobile devices”, “it’s not bad, but we can work on better SEO optimization”)

As a result, we got this:

We’re ready to send extremely personalized messages on LinkedIn 🔥

Step #5 Send personalized messages on LinkedIn

To do this, you need to install Expandi — the safest and most powerful LinkedIn automation platform.

1. Once you connect your LinkedIn account, let’s create a campaign (go to campaigns → Add Campaign)

2. Choose “Connector campaign”:

3. Choose the name for the campaign:

4. Go to “People” and click on “Import CSV”:

5. Upload the document you get previously and Map the fields:

6. Once you do this, go to “Steps” and create a message.

You can steal ours (but adapt!):

Don’t forget to add follow-ups:

Here is the follow-up we suggest:

7. Turn on the campaign! Wait a bit and come back to LinkedIn to start seeing messages like this:


If you’re reading this, here are a few more useful things:

  1. Sign up for Expandi Free Trial
  2. Connect with me on LinkedIn
  3. Join our LinkedIn Outreach Family community (we share a lot of exclusive things here)
  4. Watch this quick video 👇


This eBook is your ticket to never wondering how to promote your LinkedIn event the right way ever again

This FREE eBook will teach you all the tricks

  • The exact 1on1 examples we used (many times over) from our content plan (posts, video, polls)
  • How to automatically Invite your network throughout the month
  • 7 ‘Untapped Promotion’ strategies to get over 1000+ people to register for your event
  • How to interact with all attendees before the event and after the event

What works now won’t work again in a few months 😉 So…If you want take the swing and benefits – before it’s too late and before everyone starts using them

Download your FREE eBook now

Previous Post
How To Schedule Posts On LinkedIn: All You Need To Know About The New Native Feature
Next Post
B2B Sales Funnels – Ready-to-use Templates for Your Growth

More posts