image
I used to spend the first two days of any campaign just building the list.
Not messaging. Not strategy. Just finding the right companies.
Last week I tested how much time I could save if I used prospeo instead of other data providers.
Here’s the icp I worked with:
My ICP:
Healthcare staffing and recruitment agencies in the US, 11 to 200 employees, placing travel nurses, RNs, physicians, and locum tenens.
The old way looks like this:
- Open a lead database
- Enter every filter manually headcount, decision-maker job titles, geography, industry
- The part that actually ate my time: finding 20 relevant keywords that match my exact ICP
That last step alone could eat an hour. Too broad and the list is noise. Too narrow and you miss companies that are a perfect fit.
Here's what I tested:
- Opened Prospeo.io
- Typed exactly what I wanted, in plain English, into their search
- Hit search
875 companies came back.
Here's the part I didn't expect to care about as much as I did I didn't just accept the number.
I picked 5 companies at random and manually checked their:
↳ Website
↳ LinkedIn page
↳ What they actually do
All 5 were a perfect match.
Five for five doesn't happen with most databases. Usually you get a list that's "close" and spend the next hour filtering noise.
This time, there was no noise to filter.
Two days of list-building turned into ten seconds. That's the part worth paying attention to
How many days are you spending just building lists?
image
I broke down what separates a 5% reply rate from a 25% one.
It's not luck. It's sequencing.
Here's the exact structure top performers use:
𝗦𝘁𝗲𝗽 𝟭: 𝗪𝗮𝗿𝗺-𝘂𝗽 (𝗯𝗲𝗳𝗼𝗿𝗲 𝘆𝗼𝘂 𝘀𝗮𝘆 𝗮 𝘄𝗼𝗿𝗱)
Visit → Like → Follow → Connect
𝗦𝘁𝗲𝗽 𝟮: 𝗪𝗮𝗶𝘁
1-2 days post-connect. Rushing kills trust.
𝗦𝘁𝗲𝗽 𝟯: 𝗠𝗲𝘀𝘀𝗮𝗴𝗲 𝘄𝗶𝘁𝗵 𝗰𝗼𝗻𝘁𝗲𝘅𝘁, 𝗻𝗼𝘁 𝗮 𝗽𝗶𝘁𝗰𝗵
↳ Job change signal: "Saw you joined {{Company}} — how's the first month going?"
↳ Post reference: "Saw your post on PLG — curious what you're testing right now?"
↳ Peer comparison: "Worth sharing what others in your space are doing?"
𝗦𝘁𝗲𝗽 𝟰: 𝗙𝗼𝗹𝗹𝗼𝘄 𝘂𝗽 𝘄𝗵𝗲𝗿𝗲 𝘁𝗵𝗲𝘆 𝗮𝗰𝘁𝘂𝗮𝗹𝗹𝘆 𝗮𝗿𝗲
No reply on LinkedIn? Add an email touch. +13.8% lift.
𝗦𝘁𝗲𝗽 𝟱: 𝗧𝗿𝗮𝗰𝗸 𝘄𝗵𝗮𝘁 𝗺𝗮𝘁𝘁𝗲𝗿𝘀
↳ Acceptance rate: 40-55%
↳ Reply rate: 18-27%
↳ Positive reply: 8-12%
Anything below these benchmarks isn't a "LinkedIn is dead" problem.
It's a sequencing problem.
Fix the sequence before you blame the platform.
image
I've never had a client come to me and say "I think our data is the problem."
Not once.
They always blame the messaging.
Or the targeting.
Or the reps who aren't following up hard enough.
And I get it. Those things feel fixable.
But after auditing enough campaigns, the pattern becomes impossible to ignore ↓
The team spends weeks perfecting the copy.
Refining the sequence.
Debating subject lines.
Meanwhile the list underneath it all is quietly rotting.
→ People who left the company
→ Titles that no longer exist
→ Emails that were accurate at export and dead by send date
The scary part isn't just the bounce rate.
It's what bad data does to every other decision.
It makes good copy look average.
It makes strong offers look like they missed.
It makes your entire diagnosis of the campaign wrong.
So you fix the wrong things.
Then wonder why nothing improves.
When you're managing outbound across multiple clients, that cycle is expensive.
Not just in budget.
In trust.
This is why I got obsessive about data quality.
The tool I rely on most right now is Prospeo.io
1. 300M+ contacts
2. Refreshed every 7 days
3. Verified emails and direct mobiles
If data quality isn't the first thing you're checking, it should be.
image
Some outbound campaigns are already failing before the first email goes out.
And the team has no idea.
I've seen this play out more times than I'd like to admit.
A client comes to me frustrated. Good reps. Solid offer. Thoughtful sequences.
But the results just aren't there.
So we dig in.
And somewhere in the audit, I ask for the list.
That's usually where the story changes.
→ Contacts who changed jobs months ago
→ Emails that bounce the moment they're sent
→ Numbers that haven't been live in over a year
The campaign wasn't broken.
The data feeding it was.
And here's the part that stings the most:
Bad data doesn't just kill deliverability.
It makes everything else look worse than it actually is.
→ A strong offer looks weak
→ Good copy looks like it missed
→ A capable rep looks like they can't close
So the team starts questioning the strategy.
When you're running outbound for multiple clients, that becomes your credibility problem.
That's why the first thing I check now isn't the messaging.
It's the list.
Prospeo.io is the tool that made that switch easy.
300M+ contacts refreshed every 7 days, verified emails, and direct mobiles that actually hold up at volume.
Fewer dead ends. More real conversations from the same effort.
Worth a look before your next build.
image
Most people install Claude Code and never touch the .claude folder.
That's like buying a sports car and only using first gear.
Here's what's actually inside it:
𝗖𝗟𝗔𝗨𝗗𝗘. 𝗺𝗱 → 𝗬𝗼𝘂𝗿 𝗽𝗿𝗼𝗷𝗲𝗰𝘁 𝗿𝘂𝗹𝗲𝗯𝗼𝗼𝗸
↳ Coding style, conventions, gotchas
↳ Claude reads this before every single task
↳ Stop repeating yourself in every prompt
𝗔𝗱𝘃𝗶𝘀𝗼𝗿𝘆. 𝗡𝗼𝘁 𝗲𝗻𝗳𝗼𝗿𝗰𝗲𝗱. 𝗕𝗶𝗴 𝗱𝗶𝗳𝗳𝗲𝗿𝗲𝗻𝗰𝗲.
.𝗰𝗹𝗮𝘂𝗱𝗲/𝗵𝗼𝗼𝗸𝘀/ → 𝗗𝗲𝘁𝗲𝗿𝗺𝗶𝗻𝗶𝘀𝘁𝗶𝗰. 𝗔𝗹𝘄𝗮𝘆𝘀 𝗳𝗶𝗿𝗲𝘀.
↳ Auto-commit after edits
↳ Load project context on startup
↳ Save state before compaction
Claude doesn't get to skip these. Ever.
.𝗰𝗹𝗮𝘂𝗱𝗲/𝘀𝗸𝗶𝗹𝗹𝘀/ → 𝗢𝗻-𝗱𝗲𝗺𝗮𝗻𝗱 𝗲𝘅𝗽𝗲𝗿𝘁𝗶𝘀𝗲
↳ Drop a SKILL.md inside any folder
↳ Claude knows exactly when to invoke it
↳ I have one for carousel generation, one for pacing drills
Claude picks the right one based on the task.
.𝗰𝗹𝗮𝘂𝗱𝗲/𝗮𝗴𝗲𝗻𝘁𝘀/ → 𝗦𝘂𝗯𝗮𝗴𝗲𝗻𝘁𝘀 𝘄𝗶𝘁𝗵 𝗶𝘀𝗼𝗹𝗮𝘁𝗲𝗱 𝗰𝗼𝗻𝘁𝗲𝘅𝘁
↳ Code reviewer, researcher, log analyzer
↳ They run in parallel and report back
↳ Your main thread stays clean
.𝗰𝗹𝗮𝘂𝗱𝗲/𝗰𝗼𝗺𝗺𝗮𝗻𝗱𝘀/ → 𝗦𝗹𝗮𝘀𝗵 𝗰𝗼𝗺𝗺𝗮𝗻𝗱𝘀
↳ Build a /ship command that lints, builds, and deploys
↳ One command. Done.
.𝗰𝗹𝗮𝘂𝗱𝗲/𝗽𝗹𝘂𝗴𝗶𝗻𝘀/ → 𝗧𝗵𝗲 𝗿𝗲𝗮𝗹 𝘂𝗻𝗹𝗼𝗰𝗸 𝗶𝗻 𝟮𝟬𝟮𝟲
↳ Bundle hooks, skills, agents, and MCP servers
↳ One shareable package
↳ This changes everything
.𝗰𝗹𝗮𝘂𝗱𝗲/𝗿𝘂𝗹𝗲𝘀/ → 𝗣𝗮𝘁𝗵-𝘀𝗰𝗼𝗽𝗲𝗱 𝗿𝘂𝗹𝗲𝘀
↳ Loads only when files match a glob
↳ API rules don't pollute your frontend work
↳ Clean separation. Finally.
𝗺𝗰𝗽. 𝗷𝘀𝗼𝗻 → 𝗟𝗶𝘃𝗲𝘀 𝗮𝘁 𝘁𝗵𝗲 𝗽𝗿𝗼𝗷𝗲𝗰𝘁 𝗿𝗼𝗼𝘁
↳ MCP servers your project uses
↳ Claude connects them automatically
𝗧𝗵𝗲 𝗺𝗲𝗻𝘁𝗮𝗹 𝗺𝗼𝗱𝗲𝗹 𝗺𝗼𝘀𝘁 𝘃𝗶𝗯𝗲 𝗰𝗼𝗱𝗲𝗿𝘀 𝗺𝗶𝘀𝘀:
- CLAUDE. md is advisory
- Hooks are deterministic
- Skills load on demand
That's it. That's the whole thing.
Once you get this, Claude Code stops feeling like another chatbot.