Two Signals, One Question: Who's Open to New Opportunities?
If you're trying to find developers open to new roles, there are two well-known digital signals:
-
GitHub's
hireableflag — A boolean field in every GitHub user profile - LinkedIn's Open To Work banner — The green photo frame and recruiter-visible status
Both indicate availability. But they attract very different people, and the data quality differs dramatically. Let's compare them.
The GitHub Hireable Flag
Any GitHub user can set hireable: true in their profile settings. It's a simple boolean — no recruiter-facing banner, no employer notifications. Most developers don't even know it exists.
That obscurity is actually an advantage for recruiters. The developers who do set it tend to be:
- Technically active — They're already on GitHub, which means they ship code
- Self-selecting — They deliberately sought out this setting
- Less bombarded — Far fewer recruiters mine GitHub compared to LinkedIn
You can access this data via the GitHub API (GET /users/{username} returns a hireable field), or use tools like the Developer Candidates Scraper to search at scale with filters for language, location, and activity level.
LinkedIn Open To Work
LinkedIn's signal is far more visible. Users can choose to show it publicly (green banner) or only to recruiters. LinkedIn reports that profiles with the Open To Work frame get 40% more InMails from recruiters.
That visibility is a double-edged sword:
- Higher volume — More candidates, but also more passive job seekers
- Better structured data — LinkedIn profiles have standardized fields for experience, skills, and education
- More noise — The signal is so well-known that some people enable it casually
- Gatekept — Accessing this data at scale requires LinkedIn Recruiter ($$$) or scraping (against ToS)
Head-to-Head Comparison
| Factor | GitHub Hireable | LinkedIn OTW |
|---|---|---|
| Signal strength | High (obscure = intentional) | Medium (common = casual) |
| Data richness | Code, repos, contributions | Experience, skills, endorsements |
| Response rates | Higher (less contacted) | Lower (inbox fatigue) |
| Cost to access | Free (API) or low-cost tools | LinkedIn Recruiter ($8k+/yr) |
| Best for | Technical roles, startups | All roles, enterprise hiring |
| Coverage | ~5M developers (est.) | ~200M professionals |
When to Use Each
Use GitHub hireable when:
- You're hiring for technical roles where code quality matters
- You want developers who are actively building, not just listing skills
- You're a startup that can't afford LinkedIn Recruiter
- You want to evaluate candidates by their actual work before reaching out
Use LinkedIn OTW when:
- You're hiring for non-technical or mixed roles
- You need structured data (years of experience, education, certifications)
- Volume matters more than precision
- You already have LinkedIn Recruiter licenses
A Practical Approach: Combine Both
The strongest signal comes from combining both sources. A developer who has hireable: true on GitHub AND Open To Work on LinkedIn is actively looking. Someone with just the GitHub flag might be passively open. Someone with just the LinkedIn banner might not be technical enough for your role.
Here's a simple way to cross-reference:
def find_strong_candidates(github_candidates, linkedin_candidates):
"""Find candidates signaling on both platforms."""
# Match by email or name (GitHub profiles often include both)
github_emails = {c['email']: c for c in github_candidates
if c.get('email')}
strong_matches = []
for lc in linkedin_candidates:
if lc.get('email') in github_emails:
gc = github_emails[lc['email']]
strong_matches.append({
'name': lc['name'],
'github': gc['profile_url'],
'linkedin': lc['profile_url'],
'top_languages': gc.get('languages', []),
'signal_strength': 'strong' # Both platforms
})
return strong_matches
The Cost Difference
This is where it gets interesting for smaller companies. LinkedIn Recruiter Lite starts around $170/month. The full Recruiter product runs $8,000+/year.
GitHub's API is free for basic profile data. Tools like the Developer Candidates Scraper let you search by language, location, and hireable status at a fraction of the cost.
For a 10-person startup hiring 2-3 engineers per year, the GitHub-first approach can save thousands while surfacing candidates that LinkedIn misses entirely.
Key Takeaway
Neither signal is perfect alone. GitHub gives you technical depth and high-intent signals at low cost. LinkedIn gives you breadth and structured professional data at premium prices. The best recruiters use both — and the ones who mine GitHub effectively have a real edge, because so few do it.
Have you tried recruiting via GitHub profiles? What was your experience with response rates? Let me know in the comments.
Skip the Build
You don't have to reinvent this. We maintain a production-grade scraper as an Apify actor — proxies, anti-bot, retries, and schema all handled. You can run it on a pay-per-result basis and get clean JSON without writing a single line of scraping code.
Top comments (0)