i run an outreach pipeline that scraped 1,190 prospects across 4 niches and 54 countries. the entire thing runs on python scripts, a linux server, and gmail. total monthly cost: zero.
here's the technical breakdown of how it works and what i learned from 367 emails sent before gmail shut me down.
the stack
- python 3 for everything — scraping, email generation, sending, monitoring
- beautifulsoup4 for scraping agency websites and extracting emails
- smtplib for sending via gmail SMTP with app password
- cron jobs for scheduling sends (25/day to stay under gmail limits)
- json files for batch management and sent logs
the scraping pipeline
each prospect goes through 3 steps:
- web search — find agencies in target city + niche
- email extraction — scrape contact pages for email addresses, filter out images and spam traps
- site scan — run my SEO analyzer against their domain to find real issues for personalization
the scan results feed directly into the email template so each pitch references actual problems on their site. not "your SEO could be better" but "your site is missing alt text on 23 images and has no meta descriptions on 4 pages."
the sending system
gmail gives you about 25 sends per day before it starts getting suspicious. i space them 2.5 minutes apart and reconnect SMTP every 10 emails to avoid timeout disconnects.
the sender script:
- loads the batch json
- checks against sent log to skip already-sent
- sends with 2.5 min delay
- logs each send with timestamp
- stops on any SMTP error
what happened
367 emails sent across 54 countries. 3 replies (0.82% response rate). then gmail restricted the account for "sending unwanted content." appeal submitted, waiting for resolution.
the pipeline itself works. the emails land. the personalization is real. the channel just has a ceiling enforced by gmail.
what i'd do differently
- use a dedicated email service (sendgrid, mailgun) instead of personal gmail
- warm up the sending domain properly before blasting
- start with 10/day and ramp up over 2 weeks
- segment by niche and A/B test subject lines
the tools
i packaged some of this into products:
- free SEO chrome extension — scans any site for 10 SEO factors ($9 for pro features)
- agency contact list — free 50-contact sample from the 798 i scraped
- cold outreach service — the full pipeline as a managed service
if you're building outreach automation, the hardest part isn't the code. it's staying under the radar of email providers while sending enough volume to get results.
Top comments (0)