Remote OK Jobs Scraper avatar

Remote OK Jobs Scraper

Pricing

Pay per event

Go to Apify Store
Remote OK Jobs Scraper

Remote OK Jobs Scraper

Scrape Remote OK jobs with tags, salaries, locations, descriptions, apply URLs, and fresh posting metadata for recruiting workflows.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Collect structured job listings from Remote OK for recruiting, labor-market research, newsletters, and job-board automation.

The actor reads Remote OK public JSON/listing endpoints and saves clean records with role, company, tags, location, salary range, description, apply URL, listing URL, and source metadata.

What does Remote OK Jobs Scraper do?

Remote OK Jobs Scraper turns Remote OK listings into a clean Apify dataset.

It can:

  • ✅ scrape all currently listed Remote OK jobs
  • ✅ scrape a category page such as developer jobs
  • ✅ filter by keyword, tag, posted date, and salary availability
  • ✅ save salary ranges when Remote OK provides them
  • ✅ save cleaned description text for downstream matching
  • ✅ optionally preserve the original HTML description
  • ✅ output apply links and listing links for each job
  • ✅ run without a browser for fast, low-cost collection

Who is it for?

Recruiting teams use the actor to monitor remote hiring activity and source roles in specific job categories.

Talent intelligence analysts use it to track which companies are hiring remotely, what skills appear in job tags, and how salary ranges move over time.

Remote-work newsletters use it to collect fresh openings for editorial review.

Job-board operators use it to enrich internal feeds and compare their inventory against Remote OK.

Developers and automation teams use it as a reliable Remote OK data source inside Apify, Make, Zapier, Airtable, Google Sheets, or custom pipelines.

Why use this actor?

Remote OK pages are designed for browsing, not for repeatable analytics exports.

This actor gives you:

  • 🚀 structured JSON instead of manual copy-paste
  • 🧭 filters that keep runs focused and affordable
  • 🔗 direct listing and apply URLs
  • 💵 salary ranges as numeric fields
  • 🧹 cleaned job-description text
  • 📦 an Apify dataset ready for export or API use

Data you can extract

FieldDescription
jobIdRemote OK job identifier
titleJob title
companyNameHiring company
companyLogoCompany logo URL when available
tagsRemote OK tags on the listing
categoryFirst tag, useful as a broad category
locationLocation text from Remote OK
isWorldwideWhether the listing appears worldwide/global
salaryMinMinimum salary, when available
salaryMaxMaximum salary, when available
currencySalary currency, currently USD
postedAtRemote OK posting date
descriptionTextCleaned text description
descriptionHtmlOptional original HTML description
applyUrlApply URL or Remote OK listing URL
listingUrlRemote OK listing URL
sourceUrlAPI/list page used for the record
scrapedAtTimestamp of the scrape

How much does it cost to scrape Remote OK jobs?

This actor uses pay-per-event pricing.

You pay a $0.005 run-start fee plus a tiered per-job fee for saved listings.

The BRONZE per-job price is $0.000083 per saved job, with standard Apify tier discounts for higher-volume plans. Tier prices are FREE $0.0001, BRONZE $0.000083, SILVER $0.00006474, GOLD $0.0000498, PLATINUM $0.0000332, and DIAMOND $0.00002324.

Because the actor uses HTTP endpoints instead of a browser, compute usage is low and runs usually finish quickly.

Quick start

  1. Open the actor on Apify.
  2. Keep the prefilled Remote OK developer jobs URL or add your own Remote OK URL.
  3. Set maxItems to a small value for the first run.
  4. Add tags or search terms if you want a focused dataset.
  5. Click Start.
  6. Export the dataset as JSON, CSV, Excel, XML, or RSS.

Input options

startUrls

Optional Remote OK URLs to scrape.

Examples:

  • https://remoteok.com/api
  • https://remoteok.com/remote-dev-jobs
  • https://remoteok.com/remote-marketing-jobs

If you enter a category page, the actor converts it to Remote OK's public .json endpoint.

searchTerms

Words that must appear in the title, company, tags, location, or description text.

Example:

["engineer", "python"]

tags

Remote OK tags/categories that must be present on saved jobs.

Examples:

["dev"]
["marketing", "senior"]

maxItems

Maximum number of job listings to save.

Start with 25 for a quick test, then increase for monitoring or backfills.

postedAfter

Use YYYY-MM-DD to keep only newer jobs.

Example:

"2026-05-01"

salaryOnly

Set to true to keep only jobs where Remote OK provides a salary range.

includeDescriptionHtml

Set to true when you need the original HTML formatting.

Keep it false when you only need compact, cleaned text.

Example input

{
"startUrls": [
{ "url": "https://remoteok.com/remote-dev-jobs" }
],
"searchTerms": ["engineer"],
"tags": ["dev"],
"maxItems": 25,
"salaryOnly": false,
"includeDescriptionHtml": false
}

Example output

{
"jobId": "1132436",
"title": "Events Marketing Manager",
"companyName": "Pivotal Health",
"companyLogo": null,
"tags": ["exec", "design", "saas", "marketing"],
"category": "exec",
"location": "Los Angeles",
"isWorldwide": false,
"salaryMin": 105000,
"salaryMax": 120000,
"currency": "USD",
"postedAt": "2026-05-28T08:00:02+00:00",
"descriptionText": "About Pivotal Health...",
"applyUrl": "https://remoteok.com/remote-jobs/...",
"listingUrl": "https://remoteok.com/remote-jobs/...",
"sourceUrl": "https://remoteok.com/remote-dev-jobs.json",
"scrapedAt": "2026-05-29T09:00:00.000Z"
}

Tips for better results

  • 🎯 Use tags for precise Remote OK categories.
  • 🔎 Use search terms for skills, tools, or company names.
  • 💵 Enable salary-only mode when compensation analysis matters.
  • 🧪 Test with maxItems: 25 before running larger jobs.
  • 🧾 Keep includeDescriptionHtml off unless you need raw formatting.

Integrations

You can connect the dataset to:

  • Google Sheets for recruiting dashboards
  • Airtable for editorial review queues
  • Make or Zapier for alerts and workflows
  • BigQuery or Snowflake for labor-market analytics
  • Slack or Discord bots for remote-job notifications
  • Internal ATS enrichment pipelines

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/remoteok-jobs-scraper').call({
startUrls: [{ url: 'https://remoteok.com/remote-dev-jobs' }],
tags: ['dev'],
maxItems: 25
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/remoteok-jobs-scraper').call(run_input={
'startUrls': [{'url': 'https://remoteok.com/remote-dev-jobs'}],
'tags': ['dev'],
'maxItems': 25,
})
print(run['defaultDatasetId'])

cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~remoteok-jobs-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"startUrls":[{"url":"https://remoteok.com/remote-dev-jobs"}],"maxItems":25}'

MCP usage

Use this actor through Apify MCP when you want Claude or another MCP client to fetch fresh Remote OK listings.

MCP endpoint:

https://mcp.apify.com/?tools=automation-lab/remoteok-jobs-scraper

Claude Code setup:

$claude mcp add apify-remoteok-jobs --transport http "https://mcp.apify.com/?tools=automation-lab/remoteok-jobs-scraper"

Claude Desktop JSON configuration:

{
"mcpServers": {
"apify-remoteok-jobs": {
"url": "https://mcp.apify.com/?tools=automation-lab/remoteok-jobs-scraper"
}
}
}

Example prompts:

  • "Find 20 Remote OK developer jobs with salary ranges."
  • "Collect Remote OK marketing jobs and summarize the most common tags."
  • "Monitor Remote OK for AI engineer roles posted after this week."

Automation patterns

Recruiting monitor

Run daily with a fixed tag list and postedAfter set by your workflow.

Salary tracker

Run with salaryOnly: true, export salary fields, and chart ranges by tag.

Newsletter queue

Run with broad tags, review the dataset, then select listings for your audience.

Competitive intelligence

Track which companies repeatedly post remote roles and which skills appear most often.

FAQ

Is this an official Remote OK API?

No. This actor is an independent Apify actor that reads public Remote OK job feeds and preserves Remote OK source URLs for attribution.

Can I scrape historical Remote OK jobs?

The actor returns the jobs available through Remote OK's current public feeds. It is best for recurring monitoring rather than deep historical backfills.

Troubleshooting

My run returns fewer jobs than requested

Remote OK may not have enough current jobs matching all filters. Remove a search term, reduce required tags, or disable salary-only mode.

I do not see salary data for every job

Remote OK does not publish salary ranges for every listing. Use salaryOnly if you only want jobs with salary data.

A category URL returns no results

Check that the URL is a Remote OK listing page. The actor supports remoteok.com URLs and converts normal listing pages to .json endpoints.

Data freshness

Remote OK updates its public job feeds continuously.

Each output row includes both postedAt from Remote OK and scrapedAt from the actor run so you can separate listing age from collection time.

Performance

This is an HTTP-only actor.

It does not launch a browser.

Most small and medium runs should finish quickly because filtering happens locally after one JSON fetch per source URL.

Legality

This actor collects publicly available Remote OK job listing information.

You are responsible for using the data in accordance with applicable law, Remote OK terms, privacy rules, and your own compliance requirements.

Do not use scraped data for spam, discrimination, or other prohibited recruiting practices.

Explore related actors from automation-lab:

Support

If a run fails or the output looks wrong, open an issue from the Apify run page and include:

  • your input JSON
  • expected filters
  • run ID
  • a sample listing URL if relevant

Changelog

Initial version:

  • HTTP scraping of Remote OK public JSON feeds
  • keyword, tag, date, and salary filters
  • cleaned job output with salary and URLs

Responsible use

Remote OK asks API consumers to link back to Remote OK and mention Remote OK as a source.

This actor includes listingUrl, applyUrl, and sourceUrl fields so downstream products can preserve attribution and send users back to the original listing.