Build a 100-Prospect Local SEO Pipeline in One Weekend
This is a specific two-day process. Not a conceptual overview. Not a strategy framework. A step-by-step sprint that produces a scored, prioritized list of 100 local businesses with documented competitive gaps, ready for outreach on Monday morning.
The inputs: a target vertical, a target city, and a weekend. The output: a qualified prospect pipeline with specific data attached to every name.
In This Article
Before You Start: Two Decisions That Determine Everything
Decision 1: One Vertical Only
The most common sprint failure is trying to cover multiple verticals in a single weekend. The output is a mixed list where your outreach messaging has to be generic to cover all categories, your benchmarks are not directly comparable, and the prioritization is meaningless because a score in one vertical does not mean the same thing as the same score in another.
Pick one vertical. Commit to it for the sprint. If you have an existing client in HVAC, do HVAC. If you have been doing dental practices for two years, do dental. Vertical familiarity means your outreach will be specific and your benchmark comparisons will be accurate.
Decision 2: One Metro Area
Same logic. The competitive dynamics of local SEO are market-specific. A business with 80 reviews might be dominant in a mid-size market and invisible in a dense metro. Staying in one geography makes the competitive comparisons meaningful and your outreach locally relevant. You can reference local landmarks, name actual competitors, and speak with authority about that specific market.
Saturday Morning: Build the Input List (2 to 3 Hours)
Your goal is a CSV of 150 to 200 business names and locations. You need more than 100 because some will be duplicates, some will not resolve cleanly against Google data, and the audit step will remove low-quality matches. Starting with 150 to 200 reliably produces 100 good results.
Source 1: Google Maps Category Search
Search your target category and city on Google Maps. Filter by relevance. Work through the results, copying business name and city into a spreadsheet. A Maps scraper browser extension speeds this up significantly, but manual copy-paste works for smaller lists. Focus on businesses with fewer than 60 reviews: these are the highest-opportunity prospects in most categories because they are below the competitive threshold and most likely to have documentable gaps.
Source 2: Local Directories
Chamber of commerce member directories, local business association listings, and industry-specific directories (Angi for home services, Healthgrades for healthcare, Avvo for legal) all contain categorized local businesses. These sources often include businesses that do not appear prominently in Google Maps searches, which means less competition for your outreach.
Source 3: Your Own Records
Past prospects who went cold, businesses you pitched and lost, contacts from networking events who never converted. Re-auditing these against current data often surfaces changed situations: a competitor pulled significantly ahead, a negative review spike hit their rating, a new owner took over and the profile is now neglected. Circumstances change. Updated data gives you a legitimate reason to reach back out.
CSV Format
| Column | Required? | Notes |
|---|---|---|
| Business Name | Yes | Exact name as it appears on Google |
| City | Yes | City and state for disambiguation in dense metros |
| Street Address | Recommended | Improves match accuracy; critical in cities where multiple locations share a name |
| Category | Optional | Helps with your own sorting after the audit returns |
Saturday Afternoon: Run the Audit (1 Hour Setup, Runs Overnight)
Once your CSV is ready, run the audit. The goal is to have results waiting for you Sunday morning.
What the audit should return for each business:
- Overall composite score and scores by category
- Review count and average rating
- Named top competitor with their review count and rating for direct comparison
- GBP completeness gaps: missing categories, missing attributes, missing or outdated photos
- Mobile PageSpeed score
- Review velocity signal: when was the most recent review posted?
If you are running this manually at smaller scale, the audit process from Cold Email Local Businesses: The Data-First Approach covers the three-to-five minute per-business workflow. For 150 to 200 businesses, that adds up to a full day of research rather than an afternoon of setup, which is why automated bulk processing changes the economics of this sprint.
Start the audit run early afternoon. Check that the first few results are returning clean data. Then leave it to run.
Sunday Morning: Score and Rank the List (1 to 2 Hours)
The audit results arrive as a scored list. Your job Sunday morning is to sort, filter, and cut it down to the 100 best prospects.
Sort by Composite Gap Score
The highest-priority prospects are the ones with the largest combined gap: low overall score relative to their vertical benchmark AND a top competitor significantly ahead of them. Both conditions together indicate a vulnerable business that is currently losing to a specific, nameable competitor. That combination produces the strongest outreach conversation.
Filter Out the Poor Fits
| Filter Out | Why |
|---|---|
| Businesses already dominating their Map Pack with strong metrics | No urgent problem; weak pitch; low close rate |
| Franchise locations with centralized marketing | Decision-maker is not the local owner; SEO is handled centrally |
| Businesses with obvious signs of closure (no recent reviews, outdated hours, owner response to reviews indicating closure) | Not a live prospect |
| Categories outside your expertise | Weaker proposal; lower confidence; harder close |
Cut to 100
After sorting and filtering, take the top 100. These are your qualified prospects for this sprint. The rest go into a secondary list for future sprints or for lower-priority outreach if you exhaust the primary list.
Sunday Afternoon: Prepare the Outreach Queue (2 to 3 Hours)
With 100 qualified prospects and data attached to each one, Sunday afternoon is for outreach preparation. Split the list into two tiers.
Tier 1: Top 30 to 40 Priority Prospects
These are the businesses with the largest gaps and the clearest stories. Write a fully personalized first-touch email for each one using the specific data from their audit. Name the competitor. Cite the exact review count. Reference the specific PageSpeed score or the missing GBP categories. These emails are not templated; they are written from the data.
For the email frameworks, see Local Business Cold Email Templates That Actually Work.
Tier 2: Remaining 60 to 70 Prospects
These still receive data-led outreach, but using a slightly more structured template approach where the specific data points are inserted from your audit spreadsheet. The subject line still names the competitor or cites the score. The body still references their actual situation. The template just provides the sentence structure rather than requiring a full custom write for each one.
Monday: What You Have and How to Use It
Monday morning you have a sequenced outreach queue with 100 qualified prospects, data attached to every name, and personalized emails ready for the top tier. Here is the send sequence that avoids overwhelming your own follow-up capacity:
| Day | Action | Volume |
|---|---|---|
| Monday | Send Tier 1 emails (top 30 to 40 priority prospects) | 30 to 40 sends |
| Wednesday | Send Tier 2 batch 1; follow up on any Tier 1 replies | 30 to 35 sends |
| Friday | Send Tier 2 batch 2; first follow-ups on Tier 1 non-replies | 30 to 35 sends |
| Following Monday | Second follow-ups on non-replies; convert replies to calls | Follow-up cadence |
At a 7% reply rate across 100 sends, you are looking at seven to ten replies in the first two weeks. At a 20% close rate on replies, that is one to two new client conversations from a single weekend sprint. Repeat the sprint monthly and the pipeline compounds.
The Mistakes That Waste the Weekend
- Mixing verticals. Your benchmark comparisons will be meaningless and your outreach will be generic. One vertical per sprint.
- Skipping the filter step. Sending to businesses that do not have a problem produces zero replies regardless of how good the email is. The filter step is what makes the outreach efficient.
- Writing the Tier 2 emails as pure templates. If the subject line and first sentence do not contain the actual data from the audit, you have recreated the generic cold email problem you were trying to solve. The data has to be in the first sentence.
- Sending all 100 emails on Monday. Your follow-up capacity cannot handle 100 conversations simultaneously. Stagger the sends so the follow-up load is manageable.
- Not running a rescan in 90 days. The businesses on your list that did not reply are not permanently cold. Their situation changes. A competitor pulling further ahead, a review spike going negative, a new owner taking over: any of these creates a fresh opening. The sprint compounds when you revisit the same list with updated data.