Upwork Freelancer & Talent Scraper
Pricing
from $19.00 / 1,000 results
Upwork Freelancer & Talent Scraper
Scrape Upwork freelancer profiles by keyword. Extract names, titles, countries, Job Success Scores, total earnings, skills, and agency info. Export to CSV, Excel, JSON, XML.
Pricing
from $19.00 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 hours ago
Last modified
Categories
Share

💼 Upwork Freelancer & Talent Scraper
🚀 Export Upwork freelancer profiles in seconds. Search by any keyword and get names, titles, countries, Job Success Scores, total earnings, skills, agency info, and availability - no login required, ready to download as CSV, Excel, JSON, or XML.
🕒 Last updated: 2026-05-21 · 📊 22 fields per record · Up to 1,000,000 freelancers · Global coverage
The Upwork Freelancer & Talent Scraper lets you extract public freelancer data from Upwork's talent marketplace at scale. Provide one or more search keywords (e.g. "react developer", "graphic designer", "copywriter"), and the scraper pages through Upwork's public search results collecting every freelancer card it finds. All data comes directly from Upwork's live public pages - no login, no API key, no Upwork account needed.
The dataset includes the 22 most useful public signals per freelancer: profile image, professional headline, country, Upwork tier badge (Top Rated Plus / Top Rated / Rising Talent / Expert-Vetted), Job Success Score, total lifetime earnings, skills list, agency affiliation, availability badge, consultation flag, search position, and more. Perfect for recruiters building talent pipelines, researchers studying the gig economy, or businesses benchmarking freelancer rates.
Coverage: Upwork lists 139,000+ freelancers for competitive keywords like "react developer". The scraper handles deep pagination (up to 50 pages per query) and deduplicates records across runs. Residential US proxies + Camoufox browser fingerprinting ensure reliable extraction through Cloudflare protection.
| Who uses this | Why |
|---|---|
| Recruiters & HR teams | Build shortlists of vetted freelancers without manual search |
| Freelance platforms | Competitive intelligence on talent supply and pricing signals |
| Market researchers | Analyze gig economy trends, skill distributions, and earnings |
| Startup founders | Find Top Rated Plus developers, designers, and writers quickly |
| Data scientists | Train models on freelancer bio text, skills, and reputation data |
| Lead generation agencies | Identify high-earning freelancers as potential B2B clients |
📋 What the Upwork Scraper does
- Searches Upwork's public talent marketplace for any keyword or set of keywords
- Paginates through all result pages (up to 50 pages per query, ~13 freelancers per page)
- Extracts all 22 publicly visible fields from each freelancer card
- Deduplicates records across multiple search terms in a single run
- Handles Cloudflare bot protection using stealth browser + residential US proxy
- Exports to CSV, Excel, JSON, and XML via the Apify platform
💡 Why it matters: Upwork has over 18 million registered freelancers. Manual search only shows a few pages. This scraper unlocks bulk access to the full public talent pool for any skill category - in minutes, not days.
🎬 Full Demo
🚧 Coming soon
⚙️ Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| searchTerms | array | No | ["react developer"] | List of keywords to search on Upwork talent marketplace. Each term is searched independently. |
| maxItems | integer | No | 10 | Maximum number of freelancer records to collect. Free users: capped at 10. Paid users: up to 1,000,000. |
Example 1 - Single keyword, 50 results:
{"searchTerms": ["react developer"],"maxItems": 50}
Example 2 - Multiple keywords, larger dataset:
{"searchTerms": ["react developer", "python developer", "ui ux designer", "copywriter"],"maxItems": 500}
⚠️ Good to Know: The scraper uses residential US proxies to access Upwork's public search. Free accounts are limited to 10 freelancer records. Create a free account w/ $5 credit to get started, then upgrade for full access.
📊 Output
Each record contains 22 fields:
| Field | Type | Description |
|---|---|---|
🖼 imageUrl | string | Freelancer profile picture URL |
🧑 name | string | Freelancer display name |
📌 title | string | Professional headline |
🔗 url | string | Full Upwork profile URL |
🆔 id | string | Upwork contractor unique ID |
🌍 country | string | Freelancer country |
🏅 tier | string | Top Rated Plus / Top Rated / Rising Talent / Expert-Vetted |
⭐ jobSuccessScore | integer | Job Success Score percentage (0-100) |
💵 totalEarnings | string | Lifetime earnings label, e.g. "$300K+" |
💵 totalEarningsValueMin | integer | Numeric earnings floor in USD (e.g. 300000) |
📝 description | string | Full bio / overview text |
🛠 skills | array | List of skill tags |
🎯 jobsRelevantToSearch | integer | Count of past jobs relevant to the search query |
💡 recommendedReason | string | Upwork recommendation label |
🟢 isAvailableNow | boolean | Has "Available Now" badge |
💬 offersConsultations | boolean | Offers paid consultations |
🚀 isBoosted | boolean | Paid boosted listing |
🏢 agencyName | string | Agency name if affiliated |
🏢 agencyEarnings | string | Agency total earnings label |
🔍 searchTerm | string | Keyword that returned this freelancer |
📊 searchPosition | integer | Position in search results (1-based) |
🕒 scrapedAt | string | ISO timestamp of collection |
❌ error | string | Error message if collection failed |
Sample records (real data from 2026-05-21):
[{"imageUrl": "https://www.upwork.com/profile-portraits/c1GyxylmbwyRDMzLnTieLbYbtAhDZRD3HTLPFtGFsI0jm3I4sQrbMr8LV3iqXfkiq1","name": "Yurij M.","title": "React Developer | Full Stack Developer React | Frontend React Next.js","url": "https://www.upwork.com/freelancers/~01dc05c3dd4817bee4","id": "1463815904098725888","country": "Ukraine","tier": "Top Rated Plus","jobSuccessScore": 100,"totalEarnings": "$300K+","totalEarningsValueMin": 300000,"skills": ["CSS", "JavaScript", "React", "Redux", "Node.js", "HTML5", "TypeScript", "Vue.js", "MongoDB"],"jobsRelevantToSearch": 23,"recommendedReason": "23 jobs related to your search","isAvailableNow": true,"offersConsultations": true,"isBoosted": false,"agencyName": "Soft Bee","agencyEarnings": "$400K+","searchTerm": "react developer","searchPosition": 1,"scrapedAt": "2026-05-21T12:19:54.288Z","error": null},{"imageUrl": "https://www.upwork.com/profile-portraits/c1pPxfzLZCY5gqzbPmuHHwcwuAUfPQP8dRhg71efx-E50MwEYq7TN0qPr_gT0kOjgP","name": "Mykhailo D.","title": "Front End Developer React Developer Full Stack Developer React Native","url": "https://www.upwork.com/freelancers/~01b46d301b6827ab0c","id": "1143921350420840448","country": "Ukraine","tier": "Top Rated Plus","jobSuccessScore": 100,"totalEarnings": "$400K+","totalEarningsValueMin": 400000,"skills": ["CSS", "Front-End Development", "JavaScript", "React", "Node.js", "TypeScript", "Next.js", "Python"],"jobsRelevantToSearch": 8,"recommendedReason": "8 jobs related to your search","isAvailableNow": true,"offersConsultations": true,"isBoosted": false,"agencyName": "Hoverla Soft","agencyEarnings": "$100K+","searchTerm": "react developer","searchPosition": 2,"scrapedAt": "2026-05-21T12:19:54.289Z","error": null},{"imageUrl": "https://www.upwork.com/profile-portraits/c1z0rS30VbTRWd9Tmq-OxDg3GKXBG_KbON50H-vmqWffPe94BNt70Hwd7u5N_tgkTy","name": "Raman A.","title": "React Developer / Full Stack Developer / Full Stack Cursor / PM","url": "https://www.upwork.com/freelancers/~011ea97aeb9206b2a7","id": "424277385188458496","country": "Lithuania","tier": "Top Rated","jobSuccessScore": 100,"totalEarnings": "$700K+","totalEarningsValueMin": 700000,"skills": ["CSS", "Front-End Development", "JavaScript", "React", "Python", "Node.js", "TypeScript", "Laravel", "WordPress"],"jobsRelevantToSearch": 7,"recommendedReason": "7 jobs related to your search","isAvailableNow": true,"offersConsultations": true,"isBoosted": false,"agencyName": "CreativeIT","agencyEarnings": "$1M+","searchTerm": "react developer","searchPosition": 3,"scrapedAt": "2026-05-21T12:19:54.350Z","error": null}]
✨ Why choose this Actor
| Feature | Benefit |
|---|---|
| 🧠 Stealth browser + Camoufox | Bypasses Cloudflare bot protection reliably |
| 🌐 Residential US proxies | Real user IP fingerprint for consistent access |
| 📊 22 fields per freelancer | More complete than manual copy-paste or basic scrapers |
| 🔁 Multi-keyword batch runs | One run, multiple search terms, deduplicated output |
| 💰 Earnings data included | totalEarnings and numeric totalEarningsValueMin for easy sorting/filtering |
| 🏅 Tier badges captured | Filter by Top Rated Plus, Top Rated, Rising Talent, Expert-Vetted |
| 🟢 Availability flag | isAvailableNow - immediately filter for ready-to-hire talent |
| 📦 4 export formats | CSV, Excel, JSON, XML - download directly from Apify |
| 🔌 API + webhooks | Integrate with Make, Zapier, Slack, Google Sheets |
📈 How it compares to alternatives
| Method | Speed | Scale | Cost | Reliability |
|---|---|---|---|---|
| This Actor | Fast (auto-paginated) | Up to 1,000,000 | Pay-per-use | High (stealth + proxy) |
| Manual Upwork search | Very slow | ~100 results per session | Free | N/A |
| Upwork API (official) | Fast | Limited by rate limits | Requires partner status | High |
| Generic web scraper | Variable | Limited | Variable | Low (blocked easily) |
🚀 How to use
- Create a free Apify account w/ $5 credit
- Open the Upwork Freelancer Scraper on Apify Store
- Click Try for free
- Enter your search terms (e.g. "react developer", "copywriter")
- Set
maxItemsto the number of freelancers you need - Click Start and wait for the run to complete
- Download your dataset as CSV, Excel, JSON, or XML
💼 Business use cases
Talent Acquisition & Recruiting
Build targeted shortlists of vetted freelancers for any skill category. Filter by tier (Top Rated Plus only), country, JSS above 95%, or availability. Export to your ATS or Google Sheets for team review. A search for "python developer" returns 100+ Top Rated candidates with full bios and skills - in minutes.
Competitor & Market Intelligence
Monitor how many Top Rated Plus freelancers exist in your niche. Track the distribution of earnings tiers ($10K+, $100K+, $1M+) to understand market maturity. Compare skill frequency across categories. Run weekly to spot emerging skill trends before your competitors.
Sales & Lead Generation
Identify high-earning freelancers ($100K+, $300K+) as potential agency clients or SaaS customers. The totalEarningsValueMin field enables precise numeric filtering. Freelancers with agencyEarnings of $1M+ are running substantial operations and may need professional services.
Academic & Gig Economy Research
Download thousands of freelancer bios, country data, and earnings bands for quantitative research. Analyze the geography of high-earning freelancers, skill clustering, the premium commanded by Top Rated vs. Rising Talent badges, and the distribution of JSS scores across categories.
🔌 Automating Upwork Scraper
Connect the Upwork Scraper to your workflow tools:
- Make (formerly Integromat): Trigger a run on schedule, send results to Google Sheets or Airtable
- Zapier: Auto-push new freelancer records to HubSpot, Notion, or Slack
- Slack: Alert your team when a new batch of Top Rated Plus candidates is ready
- Google Sheets: Live-sync freelancer data for collaborative review
- REST API:
POST /v2/acts/parseforge~upwork-scraper/runs- fully scriptable
🌟 Beyond business use cases
Research & Academia
Study the global distribution of freelance labor, skill premiums, and the effect of Upwork badge tiers on earnings. With 22 structured fields per record, datasets of 10,000+ freelancers are ready for regression analysis, NLP on bio text, or geographic clustering.
Non-profit & Education
Career counseling organizations can show students real earning outcomes for skills like "data scientist" or "ux designer." See which skills command $300K+ lifetime earnings vs. which are saturated.
Creative & Content Projects
Journalists and podcasters covering the future of work can pull live statistics - how many Top Rated Plus React developers are available right now? What percentage list agency affiliations? Fresh data in minutes.
Experimentation & Side Projects
Build a freelancer comparison tool, a skills-demand tracker, or a JSS benchmark dashboard. The consistent 22-field schema makes integration into any app straightforward.
🤖 Ask an AI assistant about this scraper
Not sure what to scrape or how to use the data? Paste this into ChatGPT, Claude, or any AI assistant:
"I have a CSV of Upwork freelancer profiles with fields: name, title, country, tier, jobSuccessScore, totalEarnings, totalEarningsValueMin, skills, agencyName, isAvailableNow. Help me: 1) filter for Top Rated Plus freelancers with JSS >= 95, 2) rank by totalEarningsValueMin descending, 3) extract the top 5 most common skills."
The AI can write the Python/Excel formula instantly. Your dataset is the fuel.
❓ Frequently Asked Questions
🔒 Do I need an Upwork account? No. The scraper accesses Upwork's public talent search pages - the same results you'd see browsing without logging in.
📊 How many freelancers can I get per search term? Upwork returns up to ~13 results per page and allows up to 50 pages of pagination, giving approximately 650 results per keyword. For popular terms like "react developer", the scraper finds 139,000+ listed results. Use multiple keywords to maximize coverage.
🌍 Can I filter by country?
Not directly in the input - Upwork's public search doesn't expose a country filter in the URL. However, every record includes the country field, so you can filter the exported dataset in Excel or with a script.
💰 How is totalEarningsValueMin calculated?
Upwork shows earnings as labels like "$300K+". The scraper parses this to a numeric floor (e.g. 300000). Use this field to sort or filter freelancers by earning tier programmatically.
🏅 What does the tier field contain?
One of: Top Rated Plus, Top Rated, Rising Talent, Expert-Vetted, or null if no badge is shown. Top Rated Plus = top 3% of talent by Upwork's criteria.
🔄 Can I run it on a schedule? Yes. Use the Apify Scheduler to run weekly or daily and keep your talent database fresh. Combine with Make or Zapier to auto-sync to Google Sheets.
⏱ How long does a 100-item run take? Typically 3-8 minutes depending on Cloudflare response time and proxy routing. The stealth browser requires a warmup step on the Upwork homepage before searching.
🆓 What do free users get? Free users get 10 freelancer records per run - enough to verify the data quality and field coverage. Upgrade to a paid plan to unlock up to 1,000,000 records.
🔌 Can I use the data with an API?
Yes. Every Apify dataset is accessible via REST API. Fetch results as JSON: GET https://api.apify.com/v2/datasets/{datasetId}/items?format=json
🛡 Is this legal? The scraper only accesses publicly available data - the same information visible to any visitor browsing Upwork without an account. Always use scraped data in compliance with applicable laws and Upwork's terms of service.
📁 What export formats are available? CSV, Excel (.xlsx), JSON, XML, RSS - all available directly from the Apify dataset UI or API.
🔍 Can I search for freelancers in a specific category? Yes - use Upwork-style keyword searches: "logo designer", "video editor", "seo specialist", "wordpress developer", etc. The more specific the keyword, the more targeted the results.
🔌 Integrate with any app
The Upwork Scraper dataset is accessible via Apify's standard integrations:
Storage & Productivity: Google Sheets, Airtable, Notion, Microsoft Excel, OneDrive
Automation: Make (Integromat), Zapier, n8n, Activepieces
CRM & Sales: HubSpot, Salesforce, Pipedrive, Close
Data & Analytics: BigQuery, Snowflake, PostgreSQL, MongoDB, Metabase
Communication: Slack, Microsoft Teams, Discord, Email (SendGrid)
Developer: REST API, Webhooks, JavaScript SDK, Python SDK
🔗 Recommended Actors
| Actor | Description |
|---|---|
| PeoplePerHour Jobs Scraper | Scrape freelance job postings from PeoplePerHour |
| LinkedIn People Scraper | Extract professional profiles from LinkedIn |
| G2 Reviews Scraper | Collect software reviews and ratings from G2 |
💡 Pro Tip: browse the complete ParseForge collection for scrapers covering jobs, reviews, e-commerce, travel, and more - all production-ready and regularly maintained.
🆘 Need Help? Open our contact form
⚠️ Disclaimer: This is an independent tool and is not affiliated with, endorsed by, or connected to Upwork in any way. Only publicly available data is collected - the same information visible to any visitor browsing Upwork without an account. Use this data responsibly and in compliance with applicable laws and Upwork's terms of service.