Article — May 14, 2026
How to stop recruiter spam as a developer.
Cold outreach scales for recruiters because it costs them nothing. Twenty seconds of work and a message goes out to a hundred developers. The fix isn't sharper filters — it's making contact cost something.
— Key takeaways
- Filters and unsubscribe links don't work because the sender's cost is zero.
- Putting a price on inbound contact reverses the incentive structure.
- Even a small price — five or ten credits — eliminates 95% of spray-and-pray outreach.
- You can still talk to anyone you want, for free, on your own terms.
The problem isn't filters. It's economics.
Every developer with a public GitHub eventually hits the same wall: the inbox becomes worthless. LinkedIn InMail, Twitter DMs, email scraped from a commit signature, even contact@your-domain — all of it fills up with copy-pasted pitches for roles that don't fit, salaries that don't match, and stacks you stopped touching three years ago.
The instinct is to filter harder. Disable LinkedIn messages. Add a keyword blocker. Set your status to "not open to work." It barely moves the needle, because the underlying math hasn't changed: a recruiter can send a hundred messages in a morning at zero marginal cost. If even one replies, the campaign was worth it. The other ninety-nine cost them nothing.
When sending is free, every inbox is the recipient's problem. The sender has no skin in the game.
This is the same problem email had in 1998, that comments had in 2005, and that Twitter had until Elon broke verification. Every system where access to attention is free eventually degrades into spam. The fix isn't downstream — better blocklists, smarter classifiers, longer unsubscribe flows. The fix is upstream: make sending cost something.
What "cost something" actually means
The cost doesn't need to be large. It needs to be real. A friction that filters out the spray-and-pray crowd but doesn't shut out a thoughtful company that genuinely wants to talk to you.
There are a few shapes this can take:
- Time-cost — a custom application form, a take-home, a required intro video. Works, but it costs you time too, every time you read one. And it doesn't stop the worst offenders, who'll auto-fill.
- Social-cost — only respond to warm intros. Works for some founders, doesn't work if your network is small or you're new to a city. Excludes good people.
- Money-cost — the recruiter pays, in cash or credits, to send a single message. Crucially, the money goes to you, not to the platform.
The third one is the only one that scales. It puts the cost on the side that benefits from sending — and pays the person whose attention is being spent.
A recruiter who pays $5 to message you has already filtered themselves.
Why this isn't paywalling your inbox
The objection I hear most: "This sounds like I'm charging people to talk to me. Aren't I supposed to be findable?"
You still are. The price isn't on reading, it's on sending. Anyone can land on your public profile — the page is open, the SEO works, Google indexes it. What costs credits is the act of pushing a message into your inbox. The asymmetry between effortless sending and effortful reading is what got us here in the first place.
Two more details that matter:
- If you don't reply within the window, the recruiter gets their credits back. You're not pocketing money for ghosting people.
- You can set the price low, high, or temporarily disable it. If a friend wants to reach you, share a direct link with credits prepaid by you.
What changes the first week
I've watched a dozen developers turn this on. The pattern is consistent:
- Volume drops 80–95% within forty-eight hours.
- The remaining messages are read end-to-end — because there are few enough to read.
- Response rate to the messages you do get goes up, because the senders are doing real research.
You stop dreading the notification badge. The inbox becomes a tool again. Occasionally a great role shows up. You reply, claim the credits, move on with your day.
How to start
If you want to do this on reachdev.io specifically: create a profile, pick a price, drop the link in your GitHub bio and your email signature, and stop reading LinkedIn InMail forever. It takes about ten minutes.
If you want to do this without reachdev.io: try writing a paragraph at the top of your portfolio that says "I respond to recruiter messages for $20 paid via Stripe link, refunded if I don't reply within a week." It works less smoothly, but the principle is the same — and it'll teach you very quickly what the right number is.
Either way: the moment you put a price on it, the math flips. And the inbox becomes yours again.