Malt Scraper — French Freelancer Marketplace Profiles avatar

Malt Scraper — French Freelancer Marketplace Profiles

Pricing

from $5.00 / 1,000 result scrapeds

Go to Apify Store
Malt Scraper — French Freelancer Marketplace Profiles

Malt Scraper — French Freelancer Marketplace Profiles

Scrape freelancer profiles from Malt.fr, France's largest freelance marketplace. Search by skill or role and city to get name, headline, skills, day rate (TJM), location, rating, and mission count. No login required.

Pricing

from $5.00 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Malt Scraper

Extract freelancer profiles from Malt.fr — search by skill or role and city, and get name, headline, skills, day rate (TJM), rating, and mission history for each freelancer.

Why use this actor?

Malt is France's largest freelance marketplace, with over a million registered freelancers across tech, design, marketing, and consulting. Agencies sourcing subcontractors, recruiters building freelancer talent pools, and market researchers benchmarking day rates (TJM) by skill and city all need this data without manually browsing hundreds of profiles. This actor turns a skill + city search into a clean, structured dataset in seconds.

How to scrape Malt.fr data

Malt.fr runs behind a Cloudflare managed challenge on every page, including its search endpoint, and its own robots.txt explicitly disallows the query-string search path (/s?q=...). Scraping the search results directly is both technically blocked and against the site's own crawl rules.

Instead, this actor uses Malt's public SEO landing pages — the directory structure at /a/freelance/{category}/{role}/{city} (for example /a/freelance/tech/developpeur-backend/paris). These pages are explicitly allowed by robots.txt, are indexed by Google, and are server-rendered with real freelancer cards baked into the page: name, headline, skills, day rate, rating, and mission count, all embedded in the page's Nuxt.js data payload.

To reach these pages reliably, the actor routes requests through Bright Data's Web Unlocker, which handles Malt's Cloudflare challenge automatically. It then parses the embedded JSON payload (Malt's Nuxt "devalue" format, a flat array of cross-referenced values) to pull out every freelancer card on the page, merging the "available now" and "experienced" freelancer lists and removing duplicates.

Give it a skill (in French — "développeur", "ux designer", "community manager") and a French city, and it maps your query to the matching Malt directory page, plus a handful of neighboring city pages if you ask for more results than a single page holds.

Input

FieldTypeRequiredDescription
searchQueryStringNoSkill or role keyword, in French (default: développeur). Examples: ux designer, data scientist, chef de projet.
locationStringNoFrench city (default: Paris). Examples: Lyon, Marseille, Bordeaux, Lille, Toulouse, Nantes, Rennes, Strasbourg, Montpellier.
maxResultsIntegerNoMaximum freelancer profiles to return (default: 20, max: 200).
brightDataApiKeyStringNoYour own Bright Data Web Unlocker API key. Leave empty to use the built-in unlocking service.
proxyConfigurationObjectNoLegacy field, kept for backwards compatibility. Ignored — fetching goes through Bright Data.

Output

Each result contains:

FieldTypeExample
idString"62fdff4b6b1f8c2dc07631a9"
nameString"Abdoulaye Dabo"
headlineString"Développeur Back-End | PHP | Symfony | ERP"
skillsArray["PHP", "Symfony", "MySQL", "Docker", ...]
dayRateNumber500
currencyString"EUR"
locationString"Enghien-les-Bains"
locationTypeString"EVERYWHERE"
ratingNumber5
reviewCountNumber12
missionsCountNumber3
availabilityString"AVAILABLE_AND_VERIFIED"
photoUrlStringFreelancer profile photo URL
urlStringFull Malt profile URL
roleString"Développeur Backend"
scrapedAtString"2026-07-14T10:00:00.000Z"

Example output

{
"id": "62fdff4b6b1f8c2dc07631a9",
"name": "Abdoulaye Dabo",
"headline": "Développeur Back-End | PHP | Symfony | ERP",
"skills": ["Développement Back-End", "PHP", "Symfony", "MySQL", "Docker"],
"dayRate": 500,
"currency": "EUR",
"location": "Enghien-les-Bains",
"locationType": "EVERYWHERE",
"rating": 5,
"reviewCount": 0,
"missionsCount": 3,
"availability": "AVAILABLE_AND_VERIFIED",
"photoUrl": "https://dam.malt.com/e5b7bbb4-a7a5-411d-bf78-b5b3c9be3c35",
"url": "https://www.malt.fr/profile/abdoulayedabo",
"role": "Développeur Backend",
"scrapedAt": "2026-07-14T10:00:00.000Z"
}

Cost estimate

This actor uses approximately 1-2 compute units per 100 results (one Bright Data Web Unlocker request typically returns 12-24 unique freelancer profiles). At standard Apify pricing, that's roughly $0.50-$1.00 per 1,000 profiles.

Limitations

  • Malt does not expose true keyword search results outside its Cloudflare-protected app — this actor uses the site's own public SEO directory pages, which cover the most common skills and cities but not every possible search combination.
  • Each directory page carries roughly 12-24 unique freelancer profiles; large maxResults values are filled by combining nearby city pages for the same role.
  • Skill keywords are matched against a curated catalog of ~35 common Malt role categories (developer, designer, marketing, consulting, etc.). Unrecognized keywords fall back to the closest general role.
  • Data is scraped from the public website and may change without notice.
  • Respect Malt's terms of service and use responsibly.

Frequently asked questions

Does this require a Malt account or login? No. The actor scrapes Malt's public directory pages, which don't require authentication.

Can I search by any skill? The actor matches your keyword against a curated catalog of ~35 common Malt role categories spanning tech, design, marketing, communication, project management, and consulting. Very niche or highly specific keywords fall back to the closest general role — check the role field in the output to confirm what was matched.

Why isn't a specific freelancer showing up? This actor surfaces the freelancers Malt itself features on its public directory pages for a given skill and city, not a full database dump of every registered freelancer. Malt's own search behind login shows a wider pool.

How fresh is the data? Every run scrapes live pages at request time, so day rates, availability, and mission counts reflect Malt's current data.

Need this data on a schedule, or a custom version?

We run this scraper as a managed service for businesses: scheduled runs, deduplication, delta detection, and delivery to your inbox, Google Sheets, or API — maintenance included. We can also build a custom version with your exact fields and filters, or combine multiple sources into one feed.

See studioamba.dev/services or email hello@studioamba.dev for a free data sample. We maintain 300+ European web scrapers and answer within one business day.