Freelancer.com Freelancer Profile Scraper
Pricing
Pay per event
Freelancer.com Freelancer Profile Scraper
Find and enrich public Freelancer.com freelancer profiles by skill, profile URL, or user ID for sourcing and marketplace research.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Extract public Freelancer.com freelancer profiles by skill, directory URL, profile URL, or user ID. Build repeatable sourcing lists with usernames, profile URLs, hourly rates, ratings, reviews, skills, locations, bios, and public verification metadata.
What does Freelancer.com Freelancer Profile Scraper do?
Freelancer.com Freelancer Profile Scraper helps you collect structured public freelancer profile data from Freelancer.com.
It supports three practical workflows:
- π Search public freelancer directories by skill keyword.
- π Import known Freelancer.com directory or profile URLs.
- π Enrich numeric Freelancer.com user IDs through the public users API.
The actor is designed for lead generation, talent sourcing, marketplace research, and competitive intelligence.
Who is it for?
Recruiters use it to create freelancer shortlists by skill, country, hourly rate, and reputation.
Agencies use it to monitor available contractors in target skill categories.
Marketplace researchers use it to compare rates, skills, and reputation signals across Freelancer.com talent segments.
Sales and partnership teams use it to build public talent or agency prospect lists without manual copy-paste.
Data teams use it to feed sourcing dashboards, enrichment pipelines, and CRM workflows.
Why use this actor?
Manual Freelancer.com directory browsing is slow and hard to repeat.
This actor turns public profile cards into a normalized dataset.
You can run the same search every week, compare results across skills, or enrich known user IDs.
The actor focuses on public freelancer profile discovery, not project listings. If you need project/job listings, use a project-listing scraper instead.
Data you can extract
| Field | Description |
|---|---|
userId | Numeric public Freelancer.com user ID when visible |
username | Freelancer.com username |
displayName | Display name from directory/API |
publicName | Public name from the user API when available |
profileUrl | Public Freelancer.com profile URL |
headline | Profile tagline shown in directory results |
location | Combined public city/country when available |
country | Public country |
city | Public city from the API when available |
hourlyRate | Public hourly rate |
currency | Currency code, usually USD from directory cards |
rating | Public rating score |
reviewCount | Number of public reviews shown in directory |
earningsScore | Public Freelancer.com earnings score shown in directory |
skills | Public skill/category tags |
bioSnippet | Public profile bio text from directory cards |
avatarUrl | Public profile image URL |
isOnline | Online indicator when visible |
emailVerified | Public API email verification flag when available |
escrowVerified | Public API escrow verification flag when available |
registrationDate | Public registration timestamp when available |
sourceType | directory, profileUrl, or userId |
sourceUrl | URL/API source used for the record |
scrapedAt | ISO timestamp of extraction |
How much does it cost to scrape Freelancer.com freelancer profiles?
This actor uses pay-per-event pricing.
There is a small start charge per run and a per-profile charge for each saved dataset item.
Current development pricing is:
- Start event:
$0.005per run. - Profile item event: tiered, with BRONZE currently
$0.001per saved profile.
Final production pricing is calculated from cloud validation runs before QA handoff.
Input options
You can use one or more input source types in the same run.
Skill keywords
Add skill names such as:
pythonweb scrapingdata entryreact.jsgraphic design
The actor converts them into Freelancer.com skill directory URLs.
Directory URLs
Use public directory URLs like:
https://www.freelancer.com/freelancers/skills/pythonhttps://www.freelancer.com/freelancers/skills/web-scraping
Profile URLs
Use public profile URLs like:
https://www.freelancer.com/u/Mahihassi
Profile URL mode is useful when you already have usernames and want normalized output rows.
User IDs
Use numeric public Freelancer.com user IDs like:
["1", "45386947"]
User ID mode enriches records with fields available from the public users API.
Example input
{"skillKeywords": ["python", "web scraping"],"maxResults": 100,"maxPagesPerSource": 8,"enrichWithPublicApi": true,"useApifyProxy": false}
Example output
{"userId": 45386947,"username": "Mahihassi","displayName": "Mahihassi","publicName": "Sardar Hasnain A.","profileUrl": "https://www.freelancer.com/u/Mahihassi","headline": "Electrical Engineer | Embedded Systems","location": "Islamabad, Pakistan","country": "Pakistan","city": "Islamabad","hourlyRate": 35,"currency": "USD","rating": 5,"reviewCount": 6,"earningsScore": 6.8,"skills": ["Electronics", "Microcontroller", "Electrical Engineering"],"sourceType": "directory","sourceUrl": "https://www.freelancer.com/freelancers/skills/python","scrapedAt": "2026-06-26T06:19:51.264Z"}
How to scrape Freelancer.com freelancer profiles
- Open the actor on Apify.
- Add one or more skill keywords, directory URLs, profile URLs, or user IDs.
- Set
maxResultsto the number of profiles you need. - Keep
enrichWithPublicApienabled for richer public profile metadata. - Run the actor.
- Export results as JSON, CSV, Excel, XML, RSS, or via API.
Tips for better results
Use specific skill keywords when you want a focused sourcing list.
Use multiple related skills when you want broader market coverage.
Increase maxPagesPerSource for deeper directory crawling.
Keep useApifyProxy disabled unless your environment blocks direct public requests.
Use user IDs for fast public enrichment when you already know the Freelancer.com users you care about.
Integrations
Use this actor with:
- Google Sheets for recruiter review sheets.
- Airtable for talent databases.
- HubSpot or Salesforce for public lead enrichment.
- Apify webhooks for scheduled monitoring workflows.
- BI dashboards for rate and reputation analysis.
- Data warehouses for marketplace intelligence.
API usage
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/freelancer-com-freelancer-profile-scraper').call({skillKeywords: ['python'],maxResults: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient('MY-APIFY-TOKEN')run = client.actor('automation-lab/freelancer-com-freelancer-profile-scraper').call(run_input={'skillKeywords': ['web scraping'],'maxResults': 100,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL
curl -X POST 'https://api.apify.com/v2/acts/automation-lab~freelancer-com-freelancer-profile-scraper/runs?token=MY-APIFY-TOKEN' \-H 'Content-Type: application/json' \-d '{"skillKeywords":["python"],"maxResults":100}'
MCP usage
Connect this actor to Claude Desktop or Claude Code through Apify MCP.
Use this tool URL:
https://mcp.apify.com/?tools=automation-lab/freelancer-com-freelancer-profile-scraper
Example prompts:
- "Find 50 public Freelancer.com Python freelancers and summarize countries and hourly rates."
- "Build a shortlist of web scraping freelancers with profile URLs and review counts."
- "Enrich these Freelancer.com user IDs and return a CSV-ready table."
Scheduling
Run the actor weekly to monitor changes in talent availability, rates, and review counts.
A scheduled run can push results to a dataset, webhook, or downstream integration.
Proxy and reliability
Initial feasibility checks showed public Freelancer.com directory HTML and users API records are reachable without login.
The default input keeps proxy usage off to reduce cost.
If your run environment is blocked, enable useApifyProxy and rerun with conservative limits.
Legal and ethical use
This actor extracts publicly available Freelancer.com profile data.
Do not use it to collect private/contact-only information.
Do not spam freelancers.
Respect Freelancer.com terms, applicable laws, and privacy requirements in your jurisdiction.
Limitations
Some profile fields are only visible on full profile pages or behind authenticated flows.
The actor intentionally avoids private or login-only data.
Freelancer.com may change HTML markup, which can require extractor updates.
Directory results can vary by skill, location, and Freelancer.com ranking changes.
Troubleshooting
Why did I get fewer profiles than expected?
Increase maxPagesPerSource, use broader skill keywords, or add multiple skill directories.
Why are some fields empty?
Not every public directory card exposes every field. API enrichment fills some fields when a numeric user ID is available.
Should I enable Apify Proxy?
Start without it. Enable proxy only if direct requests fail from your environment.
Related scrapers
Use related automation-lab actors for adjacent workflows:
https://apify.com/automation-lab/freelancer-com-project-listings-scraperfor Freelancer.com projects/jobs.https://apify.com/automation-lab/upwork-jobs-scraperfor Upwork job research if available.https://apify.com/automation-lab/linkedin-profile-scraperfor professional profile enrichment if available.
Support
If a run fails or fields stop appearing, share the run ID and input so the extractor can be checked against current Freelancer.com markup.
Changelog
Initial version extracts public directory profile cards, supports user ID enrichment, and emits a normalized freelancer profile dataset.