Freelancer Scraper
Pricing
from $0.85 / 1,000 scraped project or profiles
Freelancer Scraper
Scrape public Freelancer.com projects and freelancer profiles from keywords, project URLs, category URLs, and profile URLs. Export project titles, budgets, bid counts, skills, hourly rates, ratings, profile URLs, and source metadata.
Pricing
from $0.85 / 1,000 scraped project or profiles
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
🔎 Find Freelancer.com projects and profiles
Freelancer Scraper collects public Freelancer.com project listings and freelancer profile cards from keywords, project URLs, category URLs, and profile URLs. Use it to export project titles, descriptions, budgets, hourly rates, bid counts, skills, profile rates, ratings, review counts, profile URLs, source URLs, and scrape metadata.
Start with a simple keyword such as python, keep Include projects enabled, and set Result limit to a small number for your first run. When the dataset looks right, add more keywords, job category pages, direct project URLs, or profile URLs and export the results as JSON, CSV, Excel, XML, RSS, or through the Apify API.
✅ What this Freelancer scraper does
- Searches public Freelancer.com project listings by keyword.
- Scrapes project rows from Freelancer.com job category pages and direct project URLs.
- Scrapes freelancer profile rows from keyword searches and direct profile URLs or usernames.
- Saves one dataset row per accepted project listing or freelancer profile.
- Extracts source context so each row keeps the input target and source URL that produced it.
- Lets you choose project rows, profile rows, or both in the same run.
- Supports project sorting, fixed-price versus hourly filtering, minimum bid count, profile country filtering, and profile rating filtering.
- Charges only for saved project and profile rows.
This Actor focuses on public Freelancer.com data. It does not log in, place bids, message clients or freelancers, submit forms, scrape private account pages, or enrich rows from third-party services.
📦 What data you get
Project rows can include:
recordType:projectprojectId,title,url,sourceUrl,inputType,inputValue, andpositionstatus,description, andprojectTypebudgetandhourlyRateobjects with parsed amounts, currency, and display text when visiblebidStatswith bid count and average bid when availableskillsownerfields when Freelancer.com exposes themsubmittedAt,updatedAt, andscrapedAt
Profile rows can include:
recordType:profileprofileId,username,displayName,url,sourceUrl,inputType,inputValue, andpositiontagline,description,country, andcityhourlyRate,rating,reviewCount, andearningsScoreskills,avatarUrl,isOnline, andscrapedAt
Some fields can be empty when Freelancer.com does not show that value on the public page or card.
🧭 Common use cases
- Find fresh Freelancer.com jobs that match your skills or agency services.
- Monitor project demand for a niche, tech stack, or service category.
- Build a lead list of project URLs with budgets, bid counts, and skills.
- Research freelancer rates, ratings, locations, and skill positioning.
- Compare fixed-price and hourly project opportunities.
- Send Freelancer.com project or profile data to a spreadsheet, warehouse, webhook, or API workflow.
🚀 How to run it
- Open the Input tab.
- Add one or more
Search keywords, such aspython,React developer,data scraping, orWordPress. - Choose whether to save project listings, freelancer profiles, or both.
- Set
Result limitto a small number for the first run. - Optionally add direct project URLs, job category URLs, profile URLs, or usernames.
- Run the Actor.
- Open the dataset and export the rows or pull them through the Apify API.
Good target examples:
pythonReact developerhttps://www.freelancer.com/jobs/python/https://www.freelancer.com/projects/python/example-projecthttps://www.freelancer.com/u/exampleuser
⚙️ Input
| Field | What it does |
|---|---|
searchQueries | Freelancer.com search keywords for project listings and, when enabled, freelancer profiles. |
projectUrls | Direct Freelancer.com project URLs to save as project rows. |
categoryUrls | Freelancer.com job category URLs to scan for project listings. |
profileUrls | Freelancer.com profile URLs or usernames to save as profile rows. |
includeProjects | Saves project listing rows from keywords, project URLs, and category URLs. |
includeProfiles | Saves freelancer profile rows from keywords and profile URLs. |
maxItems | Maximum project and profile rows to save across the run. |
sortBy | Sort order for project search results. |
projectType | Keeps fixed-price projects, hourly projects, or both. |
minBidCount | Skips project rows with fewer bids than the selected number. |
country | Optional country filter for profile rows. |
minRating | Optional minimum rating for profile rows. |
🧪 Example project input
{"searchQueries": ["python"],"includeProjects": true,"includeProfiles": false,"maxItems": 25,"sortBy": "latest","projectType": "any","minBidCount": 0}
🧪 Example profile input
{"searchQueries": ["python developer"],"includeProjects": false,"includeProfiles": true,"maxItems": 25,"country": "India","minRating": 4.5}
🧾 Output example
📌 Project row
{"recordType": "project","projectId": 40478300,"title": "Roblox Digital Goods Delivery Automation","url": "https://www.freelancer.com/projects/roblox/Roblox-Digital-Goods-Delivery-Automation","sourceUrl": "https://www.freelancer.com/api/projects/0.1/projects/active/","inputType": "searchQuery","inputValue": "python","position": 1,"status": "active","description": "Project description text when visible...","projectType": "fixed","budget": {"min": 1500,"max": 3000,"currency": "USD","text": "USD 1500-3000"},"hourlyRate": {"min": null,"max": null,"currency": null,"text": null},"bidStats": {"bidCount": 12,"averageBid": 2400},"skills": ["PHP", "JavaScript", "Python", "WordPress", "C++ Programming"],"owner": {"id": null,"username": null,"displayName": null,"country": null},"submittedAt": "2026-05-29T22:10:58.000Z","updatedAt": null,"scrapedAt": "2026-05-29T22:30:00.000Z"}
👤 Profile row
{"recordType": "profile","profileId": null,"username": "ajaynpaladiya","displayName": "Ajay P.","url": "https://www.freelancer.com/u/ajaynpaladiya","sourceUrl": "https://www.freelancer.com/freelancers?q=python%20developer","inputType": "searchQuery","inputValue": "python developer","position": 1,"tagline": "Full Stack Developer","description": "Profile summary text when visible...","country": "India","city": null,"hourlyRate": {"amount": 15,"currency": "USD","text": "$15 USD per hour"},"rating": 4.9,"reviewCount": 1221,"earningsScore": null,"skills": ["PHP", "Python", "JavaScript"],"avatarUrl": null,"isOnline": null,"scrapedAt": "2026-05-29T22:30:00.000Z"}
💳 Pricing
This Actor uses pay-per-event pricing. You are charged for each saved project listing or freelancer profile. Runs that find no matching public Freelancer.com results do not create charged dataset rows.
For cost control, start with a small Result limit, review the dataset, then raise the limit when the output matches your workflow.
⚠️ Limits and caveats
- The Actor only collects public Freelancer.com data visible to the run.
- Project rows and profile rows have different fields because Freelancer.com exposes different data for listings and freelancer cards.
- Some fields may be
nullwhen Freelancer.com does not show them for a specific project, profile, region, or page state. - Direct project URL rows can be lighter than keyword project rows when the public project page does not expose every structured field.
- Very broad keywords can return many similar results, so use
Result limit,Project type,Minimum bid count,Profile country, andProfile ratingto keep runs focused.
❓ FAQ
🔀 Can I scrape Freelancer.com jobs and profiles in one run?
Yes. Enable both Include projects and Include profiles. The dataset will contain project and profile rows, and each row's recordType tells you which contract it uses.
🔐 Do I need a Freelancer.com account?
No. This Actor is built for public Freelancer.com project listings and profile cards. It does not use your Freelancer.com account and does not perform logged-in actions.
🔌 Can I use this as a Freelancer.com API?
Yes, for the public data this Actor returns. You can run it from the Apify API, schedule it, connect webhooks, or export the dataset to JSON, CSV, Excel, XML, and RSS.
🧩 Why are some fields empty?
Freelancer.com does not expose every field on every project listing or profile card. Empty values mean the field was not visible in the public source data for that row.
📝 Changelog
- 0.1: Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Other actors
- LinkedIn Company People Scraper ↗ - Export visible employees from LinkedIn company People pages.
- LinkedIn Company Scraper ↗ - Collect public company profile facts for account research.
- Website Emails Scraper ↗ - Find public contact emails from websites you already care about.
- BusinessesForSale Scraper ↗ - Export business opportunity listings with prices, locations, and seller links.
- Reddit Scraper ↗ - Search Reddit posts and comments for market and audience research.
Made with ❤️ by Maxime Dupré