PeoplePerHour Scraper — Freelance Jobs & Freelancer Leads
Pricing
from $3.00 / 1,000 results
PeoplePerHour Scraper — Freelance Jobs & Freelancer Leads
Scrape PeoplePerHour freelance jobs (title, budget, category, proposals, client) and freelancer profiles (name, hourly rate, skills, rating, reviews, country) for lead generation. Paste freelance-jobs or hire-freelancers URLs.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Extract structured data from PeoplePerHour at scale: freelance job listings (title, budget, currency, category, proposals, client) and freelancer profiles (name, headline, hourly rate, skills, rating, reviews, completed projects, country). Paste freelance-jobs or hire-freelancers URLs and get clean JSON/CSV/Excel in seconds. Built for recruiters, agencies, market researchers and lead-gen teams.
What This Actor Does
PeoplePerHour is a leading freelance marketplace with hundreds of thousands of freelancers and a live stream of freelance jobs. This Actor turns both sides into structured data. Two record types, from whichever URLs you provide:
Record type | You provide | You get |
|---|---|---|
job | A freelance-jobs URL | Job title, description, budget & currency, category, status, proposals count, posted date, and the client's name & country |
freelancer | A hire-freelancers URL | Name, headline, hourly rate, skills, country/city, certification, rating, reviews, completed projects, response time, endorsements |
The Actor reads PeoplePerHour's own inline page data, so results are clean and complete — and it paginates automatically to the end of the result set.
Why Use This
- Freelancer lead lists. Every profile carries a name, headline, skills, hourly rate, country and track record (rating, reviews, completed projects) — a ready-made source for recruiting, sourcing and outreach.
- Live freelance job feed. Track what buyers are posting — budgets, categories, proposal counts and the posting client — for market research, competitive intel or lead-gen to buyers.
- Rich, structured fields. Rate, skills, rating and stats come as clean typed values, not scraped text.
- Fast and cheap. Pure-HTTP with a browser-grade fingerprint. No headless browser, so it stays quick and inexpensive across thousands of records.
Quick Start
Run it in the console (no code)
- Open the Actor in Apify Console.
- Jobs: paste a jobs URL, e.g.
https://www.peopleperhour.com/freelance-jobs/technology-programming. - Freelancers: paste a freelancers URL, e.g.
https://www.peopleperhour.com/hire-freelancers?skills=Wordpress. - Set Max total items (0 = all), click Start, then export as JSON, CSV, Excel or HTML, or push to Google Sheets, a webhook or a database.
Run it via API (Python)
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run_input = {"searchUrls": ["https://www.peopleperhour.com/freelance-jobs/technology-programming","https://www.peopleperhour.com/hire-freelancers?skills=Wordpress",],"maxItems": 500,}run = client.actor("YOUR_USERNAME/peopleperhour-scraper").call(run_input=run_input)for rec in client.dataset(run["defaultDatasetId"]).iterate_items():if rec["type"] == "freelancer":print(rec["name"], "·", rec["hourlyRate"], rec.get("cert"), "·", rec["country"])
Build a freelancer lead list (Python)
run = client.actor("YOUR_USERNAME/peopleperhour-scraper").call(run_input={"searchUrls": ["https://www.peopleperhour.com/hire-freelancers?skills=Search%20engine%20optimization"],"maxItems": 1000,})leads = []for r in client.dataset(run["defaultDatasetId"]).iterate_items():if r["type"] == "freelancer" and (r.get("feedbackRating") or 0) >= 0.95:leads.append({"name": r["name"], "headline": r["jobTitle"], "rate": r["hourlyRate"],"country": r["country"], "reviews": r["reviews"], "skills": r["skills"],})print(len(leads), "high-rated freelancers")
Analyze the job market (Node.js)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('YOUR_USERNAME/peopleperhour-scraper').call({searchUrls: ['https://www.peopleperhour.com/freelance-jobs/design'],maxItems: 300,});const { items } = await client.dataset(run.defaultDatasetId).listItems();const jobs = items.filter(r => r.type === 'job');const avg = jobs.reduce((s, j) => s + (j.budgetConverted || 0), 0) / jobs.length;console.log('avg budget:', avg.toFixed(0), '· open jobs:', jobs.length);
Input Parameters
| Field | Type | Description |
|---|---|---|
searchUrls | array | PeoplePerHour freelance-jobs and/or hire-freelancers URLs. Auto-detected and paginated. |
maxItems | integer | Max records (jobs + freelancers) across all URLs. 0 = no limit. |
proxyConfiguration | object | Apify Proxy. Datacenter is enough and enabled by default. |
Finding URLs: search or filter on peopleperhour.com (by category, skill, keyword) and copy the address-bar URL — filters like ?skills= are preserved.
Output
type: "job"
{"type": "job","jobId": "4521722","title": "Screen control system","description": "I am looking to develop a website that will control digital screens…","budget": 1000, "budgetConverted": 1342, "currency": "GBP","category": "Technology & Programming", "subCategory": "Programming & Coding","status": "open", "proposalCount": 58,"postedAt": "2026-09-16 04:50:40","clientName": "Paul Swift", "clientCountry": "United Kingdom","url": "https://www.peopleperhour.com/freelance-jobs/…/screen-control-system-4521722"}
type: "freelancer"
{"type": "freelancer","freelancerId": "660962","name": "GAJURA C.","jobTitle": "SEO & Digital PR Expert | Authority Link Building","country": "Spain", "countryCode": "ES", "city": "Marbella","hourlyRate": 32, "cert": "TOP","feedbackRating": 0.99, "reviews": 2580,"projectsCompleted": 3132, "completedRatio": 0.95,"responseTime": "within a few hours", "endorsements": 217,"skills": ["Link building", "Google ranking", "Content marketing", "Guest posting"],"url": "https://www.peopleperhour.com/freelancer/…"}
Use Cases
1. Freelancer sourcing & recruiting
Build targeted lists of freelancers by skill, rate, country and track record. Filter to top-rated, high-volume sellers for staffing, agency bench-building or vendor sourcing.
2. Freelancer lead generation
Every profile is a lead: name, headline, skills, rate and stats. Perfect for tools, courses, agencies and services that sell to freelancers.
3. Freelance market & rate research
Analyze hourly rates, skills demand and budgets across categories and countries. Benchmark what freelancers charge and what buyers pay.
4. Buyer / demand lead generation
Job postings carry the posting client and their country — a source of buyers actively hiring in your niche.
5. Competitive & talent intelligence
Track the most in-demand skills, top freelancers and busiest categories to inform pricing, positioning and hiring.
6. Data enrichment
Enrich CRM or ATS records with public freelancer stats — rating, reviews, completed projects and response time.
Tips
- Jobs URLs look like
/freelance-jobs/{category}; freelancer URLs like/hire-freelancersor/hire-freelancers?skills={skill}. - Skill filters on freelancer URLs (
?skills=Wordpress) narrow results to a niche — great for targeted lead lists. maxItems: 0paginates to the end; set a cap for quick samples.- Schedule it with Apify Schedules to keep a fresh feed of jobs and freelancers.
Frequently Asked Questions
Do I need a PeoplePerHour account? No. The Actor reads publicly visible listing and profile data — no login required.
Can I scrape both jobs and freelancers in one run?
Yes. Put both kinds of URLs in searchUrls; each record carries a type of job or freelancer.
How is the rating expressed?
feedbackRating is PeoplePerHour's positive-feedback ratio (0–1, e.g. 0.99 = 99%). reviews is the review count.
What export formats are supported? JSON, CSV, Excel, HTML, or via API — plus Google Sheets, webhooks, Make and Zapier.
Legal & Responsible Use
This Actor collects only publicly available information for research, analytics and business use. You are responsible for how you use the data. Please:
- Respect PeoplePerHour's Terms of Service and robots directives.
- Comply with applicable data-protection laws (GDPR/CCPA) when handling personal data.
- Do not use the data for spam, harassment, or any unlawful purpose.
- Use reasonable request volumes and scheduling.
This project is an independent tool and is not affiliated with, endorsed by, or sponsored by PeoplePerHour.