# Fiverr Scraper — Gigs, Prices, Sellers & Ratings (`haketa/fiverr-scraper`) Actor

Scrape Fiverr gigs: title, starting price, package type & delivery time, seller (country, level, Pro status), rating, review count and image. Search by keyword or paste Fiverr search URLs. No login, no API key.

- **URL**: https://apify.com/haketa/fiverr-scraper.md
- **Developed by:** [Haketa](https://apify.com/haketa) (community)
- **Categories:** Business, Lead generation
- **Security:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Fiverr Scraper — Gigs, Prices, Sellers & Ratings

Extract gig listings from **Fiverr** as clean, structured data — title, starting price, package type & delivery time, seller (country, level, Pro status), rating, review count and image. Search by keyword or paste Fiverr search URLs (with filters). No login, no API key.

Built for freelance-market research, competitive pricing, lead generation (seller discovery) and category analytics.

***

### What you get

Each gig is one clean JSON record:

| Field | Description |
|---|---|
| `gigId` | Fiverr gig id |
| `title` | Gig title |
| `url` | Gig URL |
| `price` | Starting price (number) |
| `currency` | Currency (USD on Apify proxy) |
| `packageType` | Cheapest package tier |
| `deliveryDays` | Delivery time of that package |
| `extraFast` | Extra-fast delivery available |
| `numPackages` | Number of packages offered |
| `rating` | Gig rating (0–5) |
| `reviews` | Review count |
| `sellerName` / `sellerDisplayName` | Seller username & display name |
| `sellerUrl` | Seller profile URL |
| `sellerCountry` | Seller country (ISO) |
| `sellerLevel` | Seller level |
| `sellerOnline` | Online status |
| `isPro` | Fiverr Pro seller |
| `isFeatured` / `isFiverrChoice` | Placement flags |
| `offersConsultation` | Offers consultation |
| `languages` | Seller languages (ISO codes) |
| `categoryId` / `subCategoryId` | Category ids |
| `image` | Gig cover image URL |
| `scrapedAt` | ISO timestamp |

***

### Input

| Field | Type | Description |
|---|---|---|
| `searchTerms` | array | Keywords, e.g. `["logo design", "video editing"]`. |
| `startUrls` | array | Fiverr search URLs to scrape directly (great for filters like `&pro=true`). |
| `maxItems` | integer | Max gigs to save (default 100). |
| `maxPagesPerTerm` | integer | Pages per search (48 gigs/page; Fiverr caps at ~20). |
| `proxyConfiguration` | object | Apify datacenter proxy (default). Residential not required. |

#### Example input

```json
{
  "searchTerms": ["logo design", "wordpress"],
  "maxItems": 300,
  "proxyConfiguration": { "useApifyProxy": true }
}
```

***

### How it works

Fiverr server-renders its search results into a JSON blob in the page. This actor fetches each search page over HTTP, parses that JSON and maps every gig — no browser needed. Fiverr fronts a bot check that flags a session after its first page, so the actor **rotates the datacenter proxy IP on every request** (a fresh visitor per page), which passes reliably and keeps runs cheap.

### Tips

- **Filters:** build a Fiverr search URL in your browser (Pro only, price range, seller level, delivery time) and paste it into `startUrls`.
- **Lead gen:** `sellerName` + `sellerUrl` + `sellerCountry` + `sellerLevel` identify sellers to reach out to.
- **Pricing research:** `price` + `packageType` + `rating` + `reviews` across a category.

### FAQ

**Do I need a login or API key?** No.

**Which currency?** Prices come back in the proxy's currency — USD on Apify's proxy.

**Does it return review text?** It returns rating and review count (not individual review text).

***

### Related scrapers

PeoplePerHour, Workana, Freelancermap, Upwork alternatives, Gumroad.

# Changelog

This Actor's version history is a separate document: https://apify.com/haketa/fiverr-scraper/changelog.md

# Actor input Schema

## `searchTerms` (type: `array`):

Keywords to search on Fiverr. Each is searched and paginated. Example: logo design, video editing, wordpress.

## `startUrls` (type: `array`):

Fiverr search URLs to scrape directly — handy for applying filters (Pro, price range, seller level). Example: https://www.fiverr.com/search/gigs?query=logo%20design\&pro=true

## `maxItems` (type: `integer`):

Maximum number of gigs to save across all searches.

## `maxPagesPerTerm` (type: `integer`):

How many result pages to crawl per search (48 gigs per page; Fiverr caps search at ~20 pages).

## `proxyConfiguration` (type: `object`):

Apify datacenter proxy is recommended — the actor rotates the IP per request to pass Fiverr's bot check. No residential needed.

## Actor input object example

```json
{
  "searchTerms": [
    "logo design"
  ],
  "startUrls": [],
  "maxItems": 100,
  "maxPagesPerTerm": 10,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

## `datasetUi` (type: `string`):

No description

## `output` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchTerms": [
        "logo design"
    ],
    "startUrls": [],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("haketa/fiverr-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchTerms": ["logo design"],
    "startUrls": [],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("haketa/fiverr-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchTerms": [
    "logo design"
  ],
  "startUrls": [],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call haketa/fiverr-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,haketa/fiverr-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/TrO8qAEUfbLeyt9bm/builds/MQIcWoZhmaKUXgOqp/openapi.json
