Whichever way you cut it, outreach link building for SEO is hard. Even when armed with the best possible content, getting in front of the right bloggers and webmasters can be an uphill struggle – furthermore, actually securing link placements can be even harder.
Why Good Outreach Matters | Link Building in 2021
Most authoritative sites in any niche will have been blasted with SEO outreach emails for years, the vast majority of which likely to have been generic “Dear webmaster…” emails from spammy SEO providers. Although this deluge of emails may have made most bloggers wary of SEO outreach, it does mean that diligent, well researched outreach emails will stand out – immediately separating you from the crowd.
As a result, modern white hat link building is all about investing in the outreach itself – no matter how great your content is, 80% of the overall campaign should be invested in actually pushing it to the sites you want links from.
As a result, while outreach tools such as Pitchbox can be a powerful asset for outreach link building, knowing how to create a highly customized, targeted outreach campaign from scratch is one of the very best SEO skills you can develop.
Tools Needed
- A Search Engine
- Chris Ainsworth’s SERP Scraper (FREE)
- Google Sheets (FREE)
- Yet Another Mail Merge (FREE options available)
Link Building Prospecting
The Theory
When it comes to prospecting, relevancy is key. A prospect is much more likely to be receptive to your content if it is highly relevant to topics they have already talked about, or can be used as a supporting source or citation.
For example, if you were outreaching an infographic on the “Top 5 Easy to Cook Vegan Meals”, you’re going to have a significantly higher hit rate from vegan specific cookery blogs compared to general food and cookery sites.
Step 1 Search Operators
Using Google search operators, we can get extremely targeted search results back. The search operators we tend to use a lot include:
- “inurl:[query]” – this returns only pages that have [query] within the URL
- “intitle:[query]” – this returns only pages that have [query] within the title tag
- “allinpostauthor:[query]” – this returns blogs that were written by a specific blogger, which can be great if you know a couple of imminent writers covering similar topics
We can combine these search operators with commonly used phrases that blogs mention when open to contributions or guest posts, such as:
- intitle:”write for us” [keyword]
- intitle:”submit” [keyword]
- allinpostauthor:”guest blog” [keyword]
- inurl:”contribute” [keyword]
If we don’t want guest post blogs specifically, we can also use common footprints to find smaller, independent bloggers, who tend to be more receptive to linking, such as:
- inurl:”about-me” [keyword]
- intitle:”lifestyle” [keyword]
- intitle:”work with me” [keyword]
Continuing with our “Top 5 Easy to Cook Vegan Meals” example, we could use the following queries:
- intitle:”write for us” vegan cooking
- intitle:”submit” vegan food blogs
- allinpostauthor:”guest blog” vegan meal ideas
- inurl:”contribute” vegan cooking
- inurl:”about-me” vegan recipes
- intitle:”lifestyle” vegan meal ideas
- intitle:”work with me” vegan cookery
Step 2 Scraping Google
First off, we want to set the default results per page to 100.
Go to “settings”, right below the search bar and select “search settings” from the drop down menu.
Under “Google Instant Predictions” select “Never show Instant Results”
In the “Results Per Page” section, drag the selector to 100.
Now, you’ll get 100 results for each search query.
Next, save Chris Ainsworth’s SERP scraper bookmarklet to your bookmarks. Follow the instructions here to do this.
With Chris’ scraper, you can now easily pull the top 100 search result for each query.
2 Preparing Your Prospects Sheet
Using the scraped results, we will populate a spreadsheet containing the domain name, the name of our main contact at the website, their email address and a “wildcard” cell, in which we’ll put any bespoke sentence we want to include.
Step 1
Start by pasting all of the scraped results into an excel spreadsheet. Sort the URL column alphabetically and remove duplicates.
Step 2
Then, copy and paste the URL column into the next available column, so that there are two duplicate columns.
Step 3
Using the column on the right, navigate to “text to columns” in the data tab, and separate by “/”.
This will leave the original column as the domain name, without the URL path. Delete the new columns created by the URL path after the first “/” so you are just left with the page URL and domain name.
Step 4 (Optional)
Place the URLs into the bulk check options for Ahrefs and/or Majestic and export the domain rating/trust flow, making sure the original order isn’t changed. Add this to a new column.
Step 5
Create three new columns for “Name”, “Email” and “Wildcard”.
You now have a full spreadsheet of all your prospects, ready to be populated with their contact information and other relevant info.
We recommend sorting the prospect list by their domain metrics, as it is a quick and easy way to prioritise the most authoritative sites.
3 Finding Email Addresses
This is where the real hard work begins, as we need to populate our spreadsheet with important information for each and every one of our prospects.
Many of the prospects will have contact us/about us pages that include their name and email, so simply place their name and email into the corresponding columns.
However, in a significant number of cases, tracking down a real email address will prove harder. Here are some of our top “internet detective” tips for tracking down hard to find emails:
#1 Check WHOIS Records
While the number of people using WHOIS privacy on their domains is increasing, there are still a significant number of bloggers who don’t protect their registrar details.
Services such as https://www.whois.com/whois/ will provide you with email addresses, phone numbers and even the addresses of domain owners who have not protected their WHOIS info.
#2 Check Their Social Media/Personal Blogs
Knowing the name of the writer, editor or webmaster of a site can be helpful, as in many cases they might list contact information on their social media profiles or separate blogs they may run.
Check the footer of the prospect’s site for links to their social media profiles and check the information sections on those.
If this fails to produce their email, try Googling around the writer to see if they write for, or run, other websites and repeat these steps there.
#3 Determine Their Domain’s Chosen Email Address Format
If the previous steps yield nothing, we can cast the net a little wider to their colleagues too.
Bigger websites with large teams will tend to have a specific email format that they will use for all their email addresses.
Knowing this, we can work out a specific person’s email if we know one of their colleagues’.
For example, if John Smith the senior editor at example.com has [email protected], we’ll know there is a good chance that our target’s email will follow the same “[first initial].[last name]@example.com” format.
You can then test this guessed email address using a service such as http://email-checker.net
#4 Hunter.io
https://hunter.io/ is a great service that can help uncover the email addresses used by millions of different domains.
Simply stick the domain into hunter.io and it will spit out all the known associated emails.
This service lets you do 150 a month free of charge, so it is worth using as a last resort, unless you want to pay for more credits.
4 Wildcards
The more personalised and detailed your outreach emails, the better chance you have that a prospect will engage with you.
The wildcard column can be used to include any detailed information regarding any of the prospects. If you’ve read and enjoyed any of their work in the past, have chatted with them on social media, or have any connection whatsoever, this can be leveraged to build rapport.
Due to the mail merge process we’ll be using, wildcard entries need to be full, self-contained sentences so that they look natural in the context of the email template.
We recommend keeping these kinds of wildcards genuine, so only use them for prospects that you actually have some connection with, or whose work you genuinely enjoyed.
5 Outreaching
The best success rate comes from campaigns that use highly customised emails, specific to each prospect.
If your outreach feels like it is bespoke and specifically targeted to a prospect, they are more likely to be receptive to your pitch.
However, with the sheer volume of prospects, sending bespoke emails would be incredibly time consuming. Instead we’ll use integrated Gmail add-ons that let us send customised mail merges.
If you don’t use Gmail, Microsoft Outlook has a fantastic mail merge function that you can learn about here.
With mail merges, it is possible to use any number of unique variables from your spreadsheet to create emails that are specific to each prospect.
Step 1
Load your prospect spreadsheet into Google Sheets.
Step 2
Navigate to “Add-ons” in the Google Sheets tool bar and click “Get Add-ons” from the drop down menu.
Search for “Yet Another Mail Merge” and install it, granting the add-on access to everything it asks for.
Yet Another Mail Merge (YAMM) is an excellent tool that integrates with Gmail and Google Sheets, allowing you to pull variables from Google sheets into email templates and send them in mass.
For those who don’t use Microsoft Outlook and other paid email clients, it is a very affordable mail merge system for Gmail users. It is free for up to 50 emails a day, or for just $2 a month you can send 400 emails a day.
Step 3
Create your email template. To do this, simply create a draft email in the Gmail account that you want to send the outreach from.
The variables from your prospect spreadsheet can be identified from the column title. Variables are used in the email with the following mark-up – <<variable>>
Continuing with our vegan infographic example, our email would therefore look something like this.
We can see the variables from the first row of the spreadsheet here:
Therefore, the email sent to the prospect would read:
Step 4
Before doing the merge to real prospects, we strongly recommend doing a test merge with the same template to a dummy spreadsheet containing your colleagues, or your own alternate email addresses.
Once your email template is saved in drafts, navigate back to your Google Sheet.
Go to “Add-ons” and hover over Yet Another Mail Merge and select “Start Mail Merge”
In the menu that pops up, enter your name and select your email draft.
Select “Send Emails” to send out the merge.
Once you’ve done your test merge, check all of your dummy emails and make any necessary edits before then repeating these steps on the prospects’ spreadsheet.
6. Organising Follow-Ups
A well written outreach email usually gets a 30% to 50% response rate. Depending on the number of prospects you have outreached to, this can result in a deluge of responses that need to be followed up.
Keeping track of 100s of responses can be very difficult, so use the prospects spreadsheet to record responses and organise your follow ups.
Yet Another Mail Merge allows you to track opens, clicks and responses so you can follow up those who have not yet responded or opened the email.
More articles
View more of our research.

Constructing An eCommerce Website for SEO
Find out how to construct an eCommerce website that is great for users and accessible for search engines.

Educating Clients on the Value of SEO: A Guide for Marketing Managers
Find out how marketing professionals can transform their clients' perception of SEO by educating them about the value that it can bring to their businesses.