We Work Remotely Jobs Scraper avatar

We Work Remotely Jobs Scraper

Pricing

from $4.00 / 1,000 wwr job listings

Go to Apify Store
We Work Remotely Jobs Scraper

We Work Remotely Jobs Scraper

Scrape remote job listings from We Work Remotely, the world's largest remote job board. Filter by category, country, salary range, engagement type, and skills. Extract job details, company info, descriptions, and apply links.

Pricing

from $4.00 / 1,000 wwr job listings

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

We Work Remotely Jobs Scraper

Scrape remote job listings from We Work Remotely, the world's largest remote job board. Filter by category, country, salary range, engagement type, and time period. Extract job details, company info, full descriptions, and apply links.

Monitor remote job trends, benchmark salaries, and source candidates across the world's largest remote-first job board with 39,000+ jobs posted.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

parsebird/wwr-jobs-scraper on Apify. Call: ApifyClient("TOKEN").actor("parsebird/wwr-jobs-scraper").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items for results. Key inputs: categories (array, "design"/"full-stack-programming"/"back-end-programming"/etc.), countries (array, ISO codes like "US"/"GB"), salaryRanges (array, "10000"/"25000"/"50000"/"75000"/"100000"), engagementType (string, "full_time"/"contract"), timeFilter (string, "24h"/"7d"/"14d"), maxResults (integer), includeDetails (boolean). Full actor spec: fetch build via GET https://api.apify.com/v2/acts/parsebird~wwr-jobs-scraper (Bearer TOKEN). Get token: https://console.apify.com/account/integrations

What does We Work Remotely Jobs Scraper do?

This Actor scrapes weworkremotely.com, the #1 remote-only job board with 6M+ monthly visitors. It supports two modes:

Listing mode (default, fast and cheap):

FieldExample
Job titleSenior Engineer - Growth Marketing
Company nameBuffer
Company logohttps://we-work-remotely.imgix.net/logos/...
Company HQSan Francisco, CA
CategorySales and Marketing
Job typeFull-Time / Contract
Salary$100,000 or more USD
LocationAnywhere in the World
Posted age1d, 7d, New
Featuredtrue / false
Top 100true / false

Detail mode (adds per job):

FieldExample
Full descriptionAbout Buffer... We're looking for...
Description HTMLRaw HTML of the job description
RegionAnywhere in the World
Posted date1 day ago
Apply beforeMay 2th, 2026
Apply URLhttps://weworkremotely.com/job-seekers/...
Company jobs count16

Why scrape We Work Remotely?

  • Remote hiring trends — Track which categories, regions, and salary brackets have the most remote job openings
  • Salary benchmarking — Compare compensation across remote roles by category and company
  • Recruiting — Source candidates or companies hiring for specific remote skills
  • Lead generation — Identify companies investing in remote teams and their hiring volume
  • Job aggregation — Feed remote job data into your own job board, newsletter, or alert system
  • Market research — Analyze demand for remote roles across industries and regions

How to use

  1. Go to the We Work Remotely Jobs Scraper page on Apify Store
  2. Click Try for free
  3. Configure your input:
    • Categories — Design, Full-Stack, Back-End, Front-End, DevOps, etc.
    • Countries — ISO codes (US, GB, DE, CA, etc.)
    • Salary Ranges — $10k, $25k, $50k, $75k, $100k+
    • Engagement Type — Full-Time, Contract, or All
    • Time Filter — Past 24h, Past Week, Past 2 Weeks, or Any Time
  4. Click Start and wait for the run to finish
  5. Download your data in JSON, CSV, Excel, or connect via API

Note: Applying many filters at once (multiple categories, countries, salary ranges, etc.) narrows the results significantly. If you are not getting enough results, try reducing the number of filters or running separate scrapes for each category.

Input parameters

ParameterTypeDefaultDescription
categoriesarray[]Job categories: design, full-stack-programming, front-end-programming, back-end-programming, customer-support, devops-and-sysadmin, sales-and-marketing, management-and-finance, product, all-other-remote
countriesarray[]ISO 2-letter country codes (US, GB, DE, CA, IN, etc.)
salaryRangesarray[]Salary brackets: 10000, 25000, 50000, 75000, 100000
engagementTypestring""full_time, contract, or empty for all
timeFilterstring""24h, 7d, 14d, or empty for any time
maxResultsinteger50Max jobs to return (0 = unlimited)
includeDetailsbooleanfalseFetch full detail pages for descriptions and apply links

Output data

Listing mode example:

{
"title": "Senior Engineer - Growth Marketing",
"url": "https://weworkremotely.com/remote-jobs/buffer-senior-engineer-growth-marketing",
"companyName": "Buffer",
"companySlug": "buffer",
"companyProfileUrl": "https://weworkremotely.com/company/buffer",
"companyLogoUrl": "https://we-work-remotely.imgix.net/logos/...",
"companyHeadquarters": "San Francisco, CA",
"category": "Sales and Marketing",
"location": "Anywhere in the World",
"jobType": "Full-Time",
"salary": "$100,000 or more USD",
"postedAgo": "1d",
"isFeatured": false,
"isTop100": false,
"scrapedAt": "2026-03-28T12:00:00.000Z"
}

Detail mode adds:

{
"description": "About Buffer... We're looking for a Senior Frontend Engineer...",
"descriptionHtml": "<div class='bn-block-outer'>...</div>",
"region": "Anywhere in the World",
"postedDate": "1 day ago",
"applyBefore": "May 2th, 2026",
"applyUrl": "https://weworkremotely.com/job-seekers/account/register?...",
"companyJobsCount": 16
}

Use with the Apify API

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("parsebird/wwr-jobs-scraper").call(run_input={
"categories": ["design", "full-stack-programming"],
"countries": ["US", "GB"],
"salaryRanges": ["100000"],
"engagementType": "full_time",
"maxResults": 50,
"includeDetails": True,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{item['title']} at {item['companyName']} - {item['salary']}")

Pricing

This Actor uses Pay-per-event pricing:

EventCostRate
wwr-job-listing$0.004$4 per 1,000 jobs
wwr-job-detail$0.035$35 per 1,000 jobs

Listing mode charges only wwr-job-listing per job found. Detail mode charges only wwr-job-detail per job enriched (no double-charging).

Cost examples (detail mode):

  • 10 jobs: $0.35
  • 50 jobs: $1.75
  • 100 jobs: $3.50
  • 500 jobs: $17.50
  • 1,000 jobs: $35.00

You only pay for the jobs actually returned.

Tips and best practices

  • Start small — Set maxResults to 5-10 to preview the data before running larger scrapes
  • Keep filters minimal — The more filters you apply simultaneously, the fewer results you'll get. We Work Remotely applies filters as AND conditions, so combining categories + countries + salary ranges can return very few or zero results
  • Use detail mode selectively — Listing mode is fast and cheap; only enable detail mode when you need full descriptions and apply links
  • Scheduling — Set up daily or weekly runs to track new remote job postings

Integrations

Connect this Actor to your workflow:

  • Google Sheets — Export results directly
  • Webhooks — Trigger actions when new data arrives
  • API — Access data programmatically via the Apify API
  • Zapier / Make — Automate downstream workflows

Limitations

  • We Work Remotely does not support server-side text search on listing pages. Filtering is available by category, country, salary range, engagement type, and time period.
  • All jobs for a given filter combination are returned on a single page (no server-side pagination).
  • Detail pages require browser rendering and are slower than listing-only mode.