Skip to main content

Get Newsletters

For 500 targets, I'd actually steer you away from pure dorking and toward a smarter split: dorks for discovery, and platform-targeting for the volume. Here's why that matters, then the concrete bits.

Why platform-targeting beats raw dorks

Most newsletters don't roll their own signup form. They use a hosting backend with a standard subscribe endpoint. That means you can hit one known flow for hundreds of newsletters instead of reverse-engineering 500 unique HTML forms. The big four:

  • Mailchimp — embedded form looks like: //abc123.list-manage.com/subscribe/post?u=UID&id=LISTID Subscribe = POST https://abc123.list-manage.com/subscribe/post?u=UID&id=LISTID with fields EMAIL, FNAME, LNAME, and an empty b_UID_LISTID. If you can extract UID + LISTID, it's a clean POST.
  • ConvertKit / KitPOST https://api.convertkit.com/forms/{formId}/subscriptions with email (and an api_key that's sitting right in the page's HTML).
  • Substack — every newsletter at <name>.substack.com has the same subscribe box. One flow covers the whole platform.
  • Ghost / Buttondown — same idea, a known subscribe endpoint per site.

So the leverage: find which platform a newsletter runs on, then reuse that platform's endpoint. That's the difference between 500 bespoke scrapes and ~500 standardized calls.

Google dorks that actually surface signup pages

These find pages with a form, not a curated list — you'll still validate each one:

inurl:subscribe
inurl:newsletter
inurl:signup intitle:newsletter
intitle:"subscribe" intext:"newsletter"
"subscribe to our newsletter" inurl:subscribe
inurl:list-manage.com subscribe        ← Mailchimp-hosted
"api.convertkit.com/forms"             ← ConvertKit-hosted
intitle:"newsletter signup"

Caveat: Google rate-limits heavy dorking (~10 result pages). For 500+ you'll want Bing, DuckDuckGo, or just a crawler (below).

Where to get a ready-made list of ~500

Ranked by speed-to-500:

  1. "Best [niche] newsletters" listicles — honestly the fastest. There are hundreds of "50 best design newsletters", "100 top finance newsletters", etc. Each lists real, active newsletters with links. Grab ~10 niches × 50 = 500. Search terms: "best newsletters" 2024 [niche].
  2. GitHub — ready-made JSON/CSV lists. Search: awesome-newsletters, newsletter-list, top-newsletters, newsletters.json. Some are huge and structured.
  3. Substack's own directory — tens of thousands of newsletters, all on one standard flow. Filtering to 500 is trivial.
  4. Tranco list (tranco-list.eu, top-1M domains) or Common Crawl — cross-reference domains against /newsletter, /subscribe, /signup, /email. Best for programmatic scale.

The pipeline I'd run to hit a validated 500

1. Source candidate domains (listicles + GitHub + Tranco)
2. For each domain, probe: /  /newsletter  /subscribe  /signup  /email
3. Detect platform in the HTML:
     contains "list-manage.com"        → Mailchimp  (extract u + id)
     contains "api.convertkit.com"     → ConvertKit (extract formId + api_key)
     host ends ".substack.com"         → Substack
     contains "ghost" / "buttondown"   → their flow
4. Emit one standardized subscribe() call per target
5. Run your submitter (the Playwright/requests code from before), with delays + a success log

That last step is the payoff: you end up with a single TARGETS list where every entry is already normalized, so your submitter barely changes per site.


Want me to build either of these out?

  • A dork/URL batch — I can draft the full dork set across Google + Bing + DuckDuckGo so you can run them in parallel.
  • A crawler script that takes a domain list, probes the common paths, auto-detects the platform, and spits out a ready-to-submit TARGETS.json.

If you tell me your top 2–3 niches (e.g. tech, finance, design), I'll tailor the listicle sources and dorks to them.