RemoteOK Jobs Scraper | Export Remote Jobs to CSV
Pricing
from $19.00 / 1,000 results
RemoteOK Jobs Scraper | Export Remote Jobs to CSV
Scrape remote job listings from RemoteOK. Export jobs with company, salary, tags, and description to CSV, Excel, JSON or XML.
Pricing
from $19.00 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 hours ago
Last modified
Categories
Share

💼 RemoteOK Jobs Scraper
🚀 Export remote job listings in seconds. Search thousands of remote-only jobs across every category - engineering, design, marketing, sales, and more. No login required, no API key needed.
🕒 Last updated: 2026-05-21 · 📊 11 fields per record · 🌍 Global remote jobs · 🔎 Keyword search · 💰 Salary data included
The RemoteOK Scraper pulls live job listings from RemoteOK's public API and delivers clean, structured records with company details, job tags, salary ranges, location hints, and full descriptions. RemoteOK is one of the most established remote-work job boards, maintained since 2014 and trusted by hundreds of thousands of remote workers and digital nomads worldwide.
Every run hits the live API - fresh data, no stale cache. Filter by any keyword to narrow results to your target role, stack, or industry. Export as CSV, Excel, JSON, or XML in under 30 seconds.
| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Recruiters, job aggregators, HR analytics teams, developers, data scientists, career coaches, job seekers | Job market analysis, salary benchmarking, tech stack trend tracking, automated job alerts, portfolio datasets |
📋 What the RemoteOK Scraper does
Five practical workflows in a single run:
- 🌍 Full catalog export. Every active remote job listing on RemoteOK.
- 🔍 Keyword filter. Filter by any term - "typescript", "python", "product manager", "react", "devops".
- 💰 Salary extraction. Pulls salary ranges where disclosed (e.g.,
$176,367 - $265,000). - 🏷️ Tag extraction. Returns the full tag array for each job - useful for trend analysis and skill tracking.
- 📅 Date extraction. Returns the
postedAtISO timestamp for recency filtering downstream.
Each record includes: title, company, URL, job ID, tags array, location, salary range, full description, posted date, and scrape timestamp.
💡 Why it matters: RemoteOK publishes a public JSON API with no authentication barrier. This Actor wraps that API with keyword filtering, clean field normalization, free/paid tier logic, and structured dataset output - so you skip the engineering work entirely.
🎬 Full Demo
🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset.
⚙️ Input
| Input | Type | Default | Behavior |
|---|---|---|---|
maxItems | integer | 10 | Records to return. Free plan caps at 10, paid plan at 1,000,000. |
searchTerm | string | "" | Filter by keyword - matched against title, company name, and tags. Leave empty to return all jobs. |
Example: 50 TypeScript remote jobs.
{"maxItems": 50,"searchTerm": "typescript"}
Example: all remote jobs, no filter.
{"maxItems": 100}
⚠️ Good to Know: RemoteOK's public API returns approximately 100 most recent jobs per request. If you need a larger backlog, run the Actor without a search term to collect the full current snapshot, then schedule recurring runs to accumulate history. Salary data is only present for jobs where the company disclosed a range - most listings leave it as null, which is accurate to the source.
📊 Output
Each job record contains 11 fields. Download the dataset as CSV, Excel, JSON, or XML.
🧾 Schema
| Field | Type | Example |
|---|---|---|
🖼 imageUrl | string | null | null (logo URL when provided by source) |
📌 title | string | null | "Software Engineer Platform" |
🏢 company | string | null | "Benchling" |
🔗 url | string | null | "https://remoteOK.com/remote-jobs/..." |
🆔 jobId | string | null | "1131626" |
🏷️ tags | array | ["software","cloud","node","engineer"] |
📍 location | string | null | "Dallas, TX" |
💰 salary | string | null | "$176,367 - $265,000" |
📝 description | string | null | Full plain-text job description |
📅 postedAt | string | null | "2026-05-19T08:00:02+00:00" |
🕒 scrapedAt | string | "2026-05-21T22:37:51.503Z" |
🗂️ Sample Records
Record 1 - Software Engineer with salary data:
{"imageUrl": null,"title": "Software Engineer Platform","company": "Benchling","url": "https://remoteOK.com/remote-jobs/remote-software-engineer-platform-benchling-1131626","jobId": "1131626","tags": ["software", "design", "technical", "developer", "cloud", "node", "biotech", "engineer"],"location": null,"salary": "$176,367 - $265,000","description": "We are rebuilding biotech for the AI era...","postedAt": "2026-05-19T08:00:02+00:00","scrapedAt": "2026-05-21T22:37:51.503Z","error": null}
Record 2 - Senior analyst role:
{"imageUrl": null,"title": "Senior Fraud Risk Analyst","company": "Braviant Holdings","url": "https://remoteOK.com/remote-jobs/remote-senior-fraud-risk-analyst-braviant-holdings-1131632","jobId": "1131632","tags": ["analyst", "financial", "strategy", "senior", "operations", "healthcare", "engineering"],"location": "Dallas, TX","salary": null,"description": "At Braviant, we believe in hiring great talent and offering them the flexibility...","postedAt": "2026-05-20T00:00:12+00:00","scrapedAt": "2026-05-21T22:37:51.503Z","error": null}
Record 3 - ML engineering role:
{"imageUrl": null,"title": "Member of Technical Staff Applied ML RecSys","company": "Liquid AI","url": "https://remoteOK.com/remote-jobs/remote-member-of-technical-staff-applied-ml-recsys-liquid-ai-1131627","jobId": "1131627","tags": ["design", "system", "python", "training", "technical", "financial", "digital nomad"],"location": "Cambridge","salary": null,"description": "About Liquid AI - Spun out of MIT CSAIL, we build general-purpose AI systems...","postedAt": "2026-05-19T08:00:08+00:00","scrapedAt": "2026-05-21T22:37:51.503Z","error": null}
✨ Why choose this Actor
| Feature | Detail |
|---|---|
| 🌐 No auth required | RemoteOK's public JSON API - zero configuration |
| 🔍 Keyword filtering | Filter by title, company, or any tag - client-side but instant |
| 💰 Salary parsing | Normalizes salary_min/salary_max into a human-readable range |
| 🏷️ Full tag array | Returns all tags for downstream classification or trend analysis |
| 📝 Clean descriptions | Strips HTML and decodes entities - plain text ready for NLP |
| 🕒 Live data | Every run hits the live API - no stale cache |
| 📦 Export-ready | CSV, Excel, JSON, XML - one click |
📈 How it compares to alternatives
| Approach | Auth needed | Freshness | Structured output | Keyword filter |
|---|---|---|---|---|
| RemoteOK Scraper (this) | None | Live API | Yes - 11 fields | Yes |
| Manual copy-paste | None | Manual | No | No |
| DIY fetch script | None | As coded | Partial | As coded |
| Generic scraper | None | Variable | No | No |
🚀 How to use
- Create a free account w/ $5 credit on Apify.
- Open the RemoteOK Jobs Scraper Actor page.
- Set
maxItemsto how many jobs you want (10 for free users, up to 1,000,000 on paid). - Optionally set
searchTermto filter by keyword (e.g.,"python","design","marketing"). - Click Run. The Actor finishes in under 30 seconds.
- Open the Dataset tab and download as CSV, Excel, JSON, or XML.
💼 Business use cases
📊 Job Market Intelligence
Track which skills and tags are most in-demand across remote postings. Schedule daily runs, pipe the dataset into a database, and chart tag frequency over time to spot rising technologies (Rust, Svelte, AI/ML) before they peak.
💰 Salary Benchmarking
Filter for a specific role or company type, export all records with non-null salary fields, and compute median ranges by tag cluster. Useful for compensation planning, recruiter briefings, and career coaching.
🤖 Automated Job Alert Pipelines
Connect this Actor to a Make or Zapier workflow: run every morning, filter new jobs posted in the last 24 hours, and push matching records to Slack, email, or a Notion database. Zero manual monitoring.
📈 Recruitment Analytics
HR teams and staffing agencies can track how fast roles are being posted, which companies are hiring aggressively, and what compensation ranges are being offered - all without manually browsing the site.
🔌 Automating RemoteOK Scraper
Connect this Actor to automation platforms in a few clicks:
- Make (Integromat) - Schedule a run, watch the dataset for new items, push to Google Sheets or Airtable.
- Zapier - Trigger when a run completes, filter by keyword, send to Slack or email.
- Apify Scheduler - Run daily at 06:00 UTC for a fresh morning dataset.
- Apify API - Call via REST to integrate into any backend pipeline.
- Webhooks - Get notified when a run succeeds and download only new records.
🌟 Beyond business use cases
🔬 Research
Academics studying the remote work market can use this dataset to analyze geographic distribution of remote roles, tag co-occurrence networks, and salary transparency trends over time.
🎨 Creative Projects
Build a personal job board, a "remote jobs by timezone" visualizer, or a skill-gap analyzer that compares your CV tags against top job tag frequencies.
🤝 Non-Profit
Career transition programs can use this data to show clients what remote roles are actively hiring right now - updated daily at no cost on the free plan.
🧪 Experimentation
Use the dataset as a seed corpus for NLP experiments: named-entity recognition on company names, keyword extraction from descriptions, salary range classification, or embedding-based job similarity.
🤖 Ask an AI assistant about this scraper
You can paste the schema above into any AI assistant and ask:
- "Which fields would be most useful for building a salary prediction model?"
- "How can I filter this dataset to only show jobs posted in the last 7 days?"
- "Write a Python snippet to group these records by the most common tag."
- "Suggest a Make workflow that emails me when a new Python job appears."
The structured JSON output is directly AI-readable - no preprocessing needed.
❓ Frequently Asked Questions
🔹 How many jobs does RemoteOK have?
The public API typically returns around 100 of the most recently posted jobs. New listings appear throughout the day. Run the Actor daily to accumulate a historical dataset.
🔹 Does the API require authentication?
No. RemoteOK's public API at https://remoteok.com/api is open with no auth required.
🔹 Why is imageUrl null for most records?
RemoteOK's API currently returns empty strings for company_logo and logo fields. The imageUrl field is captured and will be populated automatically if RemoteOK adds logo data to the API in the future.
🔹 Why is salary null for most records?
Most companies on RemoteOK do not disclose salary ranges. Only about 5-10% of listings include salary_min and salary_max values. Null salary is accurate to the source.
🔹 How does keyword search work?
The searchTerm filter matches against the job title, company name, and all tags. It is case-insensitive and substring-based - so "type" would match "typescript".
🔹 Can I get all jobs, not just the latest 100?
The public API only exposes the most recent batch. For historical depth, schedule daily runs and aggregate datasets over time.
🔹 What export formats are supported?
CSV, Excel (.xlsx), JSON, and XML - all available from the Apify dataset page with one click.
🔹 Is this Actor affected by rate limits?
The Actor makes a single API call per run. No rate limiting issues in practice.
🔹 How do I filter only jobs with salary data?
After export, filter your dataset to rows where salary is not null. In Python: df = df[df['salary'].notna()].
🔹 Can I schedule this to run automatically?
Yes. Use Apify's built-in Scheduler (under the Actor's "Schedules" tab) to run daily, weekly, or any cron expression.
🔹 What happens if the API is down?
The Actor will push an error record { "error": "API returned HTTP 503" } and exit cleanly. No partial or corrupted datasets.
🔹 Is the data real-time?
Yes. Each run fetches live data from RemoteOK's API at execution time.
🔌 Integrate with any app
Download and connect your RemoteOK dataset to:
Spreadsheets & Databases Google Sheets, Microsoft Excel, Airtable, Notion, PostgreSQL, MySQL, MongoDB, BigQuery, Snowflake
Automation Platforms Make (Integromat), Zapier, n8n, Pipedream, Tray.io
BI & Analytics Tableau, Power BI, Metabase, Looker, Google Data Studio, Redash
AI & ML OpenAI API, LangChain, Hugging Face, custom NLP pipelines
Developer Tools Apify REST API, webhooks, SDK (Node.js, Python)
🔗 Recommended Actors
| Actor | Description |
|---|---|
| Jobrapido Scraper | Aggregate job listings from Jobrapido across 57 country sites |
| Upwork Scraper | Export Upwork freelance job postings to CSV/JSON |
| Wantedly Scraper | Scrape Japanese startup job listings from Wantedly |
💡 Pro Tip: browse the complete ParseForge collection for more data tools covering jobs, reviews, aviation, maritime, government records, and more.
This Actor accesses only publicly available data from RemoteOK's open API. No login credentials, session tokens, or personal data are used or collected. Use responsibly and in accordance with RemoteOK's Terms of Service.