RemoteOK Job Scraper | Salaries, JSON & CSV
Pricing
from $1.00 / 1,000 job results
RemoteOK Job Scraper | Salaries, JSON & CSV
Scrape remote jobs from RemoteOK with companies, locations, salaries, descriptions and application links. Filter by keyword, location or salary. Export JSON, CSV or Excel; use the API, schedules or AI agents. $1 per 1,000 results plus Apify usage.
Pricing
from $1.00 / 1,000 job results
Rating
0.0
(0)
Developer
Newbs
Maintained by CommunityActor stats
6
Bookmarked
102
Total users
0
Monthly active users
8 days ago
Last modified
Categories
Share
Extract RemoteOK jobs and published salaries
Extract remote jobs from RemoteOK with job titles, companies, locations, published salary ranges, descriptions, tags, and application links. Search by keyword, location, salary, or benefits text, then download JSON, CSV, or Excel for a job board, hiring research, or a personal job tracker.
Run this RemoteOK scraper in Apify without writing code, call it through the API, or use it through Apify's MCP server in an AI workflow. It reads the current public jobs feed and needs no RemoteOK account, cookies, or proxy configuration.
Price: $1 per 1,000 saved job results, plus Apify platform usage paid by the user. No Actor start fee or monthly Actor subscription. Start with 10 results for a $0.01 result fee, plus platform usage.
How to scrape RemoteOK jobs
- Open the Actor in Apify and choose Try for free or Start. Apify's account credits and usage terms apply.
- Enter a keyword such as
engineer, or leave it empty to get the current feed. Optionally set a location or salary filter. - Choose the maximum number of results and start the run.
- Open Output to inspect the jobs. Export the dataset as JSON, CSV, or Excel, or read it through the API.
The default configuration returns up to 10 jobs. Each run can save 1–100 results, depending on the current feed and your filters.
Ready-to-run remote job searches
These example tasks contain editable inputs and an output preview:
| Search | What it does |
|---|---|
| Export the latest remote jobs | Returns up to 25 current jobs, newest first. |
| Find remote engineering jobs | Searches job text and tags for engineer. |
| Compare published remote job salaries | Excludes missing salaries and sorts published USD salary values from highest to lowest. |
| Find US-listed remote jobs | Matches United States location text; verify each listing's work eligibility. |
What can you use RemoteOK job data for?
- Job tracking: collect current openings matching your role, skills, or preferred location.
- Job board feeds: import normalized job records and retain original source links.
- Hiring and salary research: compare companies, advertised salary ranges, and skill tags within the public feed.
- Automated workflows: save a task and configure an Apify schedule, or send results to another system through its integration or API.
For recurring workflows, deduplicate across runs using remoteOkId. The Actor removes duplicate IDs within one run; it does not remember earlier runs or send job alerts by itself.
Input and filters
Start with this small keyword search:
{"tag": "engineer","numberOfResults": 10,"orderBy": "newest"}
| Input | Default | Behavior |
|---|---|---|
tag | Empty | Matches keywords across title, company, location, tags, and description. All words must match. Examples: engineer, python, customer support. |
location | Empty | Matches location text or a country code such as US, United States, or Europe. |
benefits | Empty | Searches job text and tags for phrases such as equity or health insurance. It is not a verified benefits catalogue. |
minimumSalary | Unset | Requires a published annual USD salary whose upper bound, or sole published value, meets the amount. Jobs with no salary are excluded when set. |
numberOfResults | 10 | Maximum jobs to save, from 1 to 100. Fewer may match. |
orderBy | default | default uses keyword relevance when a keyword is supplied; newest sorts by posting date; salary_high sorts by salary upper bound or sole value. |
Worldwide, Remote, Anywhere, Global, and an empty location all mean no location restriction. They do not certify that a job accepts applicants from every country. Legacy sort aliases date and salary remain supported.
For a salary search, use {"minimumSalary": 100000, "numberOfResults": 25, "orderBy": "salary_high"}. A salary range of $80,000–$120,000 qualifies; the filter does not guarantee a minimum offer of $100,000.
Output: job records and export formats
Each dataset item represents one job. The Jobs view highlights company, location, salary, posting date, and links. The Salary comparison view focuses on advertised salary ranges. JSON preserves all fields, including nested salary and organization data; CSV and Excel are convenient for the table views.
Illustrative output excerpt, not a live vacancy:
{"remoteOkId": "123456","title": "Senior Backend Engineer","employerName": "Example Company","jobLocation": "United States","salaryMin": 80000,"salaryMax": 120000,"datePosted": "2026-09-16T10:00:00.000Z","jobLink": "https://remoteok.com/remote-jobs/123456","jobApply": "https://remoteok.com/remote-jobs/123456","jobDescription": "Plain text job description","tags": "JavaScript, Node, Backend","source": "RemoteOK"}
Additional compatible fields include jobDatePosted, baseSalary, hiringOrganization, image, employerIcon, applicantLocationRequirements, jobLocationType, occupationalCategory, and slug. Missing salary values and logos remain null. Fields not consistently provided by the feed, including employer website, benefit lists, views, employment type, industry, working hours, and closing date, remain null rather than being guessed.
The separate Run summary output links to the key-value store's OUTPUT record. It reports status, filters, feed timestamp, counts, and request diagnostics. Empty searches leave the dataset empty and report NO_RESULTS. Source failures report SOURCE_ERROR and fail the run without creating billable diagnostic rows.
RemoteOK scraper API
Use your own Apify API token in an environment variable. This request waits for the run and returns the dataset as JSON:
curl --request POST \'https://api.apify.com/v2/acts/newbs~RemoteOk-Premium-Job-Scraper/run-sync-get-dataset-items?format=json&clean=true' \--header "Authorization: Bearer $APIFY_TOKEN" \--header 'Content-Type: application/json' \--data '{"tag":"engineer","numberOfResults":10,"orderBy":"newest"}'
Use format=csv or format=xlsx for another export format. For asynchronous applications, start a run through POST /v2/acts/newbs~RemoteOk-Premium-Job-Scraper/runs, wait for completion, then fetch items using the returned defaultDatasetId.
See the Actor's API tab for client examples and Apify API documentation for authentication and run options.
Use with AI agents and Apify MCP
Connect an MCP-compatible client to Apify's hosted server with this Actor selected:
https://mcp.apify.com?tools=newbs/RemoteOk-Premium-Job-Scraper
Authenticate with your Apify account or token as described in the Apify MCP setup guide. An example request is: “Use Newbs' RemoteOK Job Scraper to find 10 engineering jobs, newest first, and show company, location, published salary, and the original listing link.”
The Actor's input, dataset, and output schemas describe the filters, fields, and result locations for clients and AI agents. This is an independent tool by Newbs using RemoteOK's public feed, not an official RemoteOK API product.
Pricing and operating costs
| Saved jobs | Actor result fee |
|---|---|
| 10 | $0.01 |
| 100 | $0.10 |
| 1,000 across multiple runs | $1.00 |
Apify compute, storage, and other platform usage are billed separately to the user. Empty searches have no result fee, but platform usage still applies. Repeated runs are charged for the results saved in each run. Set a run spending limit in Apify to control the result budget.
The Actor uses one HTTP feed request on a successful run, no browser, and no paid proxy. It defaults to 256 MB memory and a 60-second timeout. Source requests have bounded timeouts, a response-size limit, and at most one retry for transient errors. Completion time depends on the source and Apify startup conditions.
Frequently asked questions
Can I scrape all historical RemoteOK jobs?
No. Coverage is the current public JSON feed, with no historical pagination or premium-only listings. A request for 100 jobs is a cap, not a promise that 100 jobs exist or match. Feed freshness is controlled by RemoteOK.
Why are there no results?
Try removing the keyword, salary, benefits, or location filters. All filters are combined. Check the Run summary for NO_RESULTS and the available/matched counts. For a failed run, inspect SOURCE_ERROR and the log rather than treating it as an empty search.
Can I schedule exports to Google Sheets, Make, n8n, or Zapier?
You can use Apify's scheduling, integrations, or API to build that workflow. Choose the destination and configure its connection separately. The Actor itself saves an Apify dataset and does not modify an external spreadsheet or send messages.
May I republish the job listings?
Follow RemoteOK's feed terms, credit Remote OK, and link to each original listing. Check each vacancy before applying or republishing; a job's presence in the feed does not guarantee it is still open.
Support and related job scrapers
Report reproducible problems in the Issues tab. Include your input and run ID, and remove tokens or other private data. If the Actor helps your workflow, an honest review on Apify helps other users decide whether it fits their needs.
For other job sources, see Newbs' Indeed Jobs Scraper, Glassdoor Jobs Scraper, and FashionUnited Job Scraper.