Snagajob Scraper - US Hourly Jobs, Wages & Employers
Pricing
Pay per event
Snagajob Scraper - US Hourly Jobs, Wages & Employers
Extract Snagajob hourly jobs across US restaurants, retail, warehouse, and gig work. Returns title, company, city/state/zip, hourly wage min/max, shift, employment type, tip/teen-friendly/transportation flags, plus employer profile pages. 20+ fields per job.
Pricing
Pay per event
Rating
0.0
(0)
Developer
NanoScrape
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
Extract hourly job listings from Snagajob, the largest US marketplace for hourly workforce roles. Restaurants, retail, warehouse, delivery, gig, seasonal, cleaning, hospitality, teen-friendly work: Snagajob is where 100M+ hourly workers search, and this actor turns that catalog into structured data.
Hourly wage, shift schedule, tip-eligibility, teen-eligible flags, transportation-provided flags: fields that matter for hourly workforce research, not the salary-year fields most job scrapers return.
What it does
Given search keywords and a US location (city, state, or zip), the actor returns every matching Snagajob posting with 20+ structured fields per job. Optional flags add a full description sweep and an employer-profile enrichment pass.
- Search by keywords + location (e.g. "server" in "New York, NY")
- OR paste pre-built Snagajob search URLs to preserve advanced filters
- SERP mode returns 20+ fields per job
includeJobDetails=trueadds full description quartet (full/html/md/snippet), requirements, application URL, job badge tags, refresh date, posting IDincludeCompanyDetails=trueadds employer profile: about, website, industry, headquarters, active-jobs list (deduplicated per employer)
The actor runs a stealth Firefox browser through US residential IPs to reliably bypass Snagajob's Cloudflare protection, so results come back on the first run without configuration.
Sample output
{"id": "687452301","source_platform": "snagajob.com","source_url": "https://www.snagajob.com/jobs/server-687452301","job_url": "https://www.snagajob.com/jobs/server-687452301","application_url": "https://apply.snagajob.com/687452301","title": "Server","company_name": "Buffalo Wild Wings","company_logo_url": "https://media.api.snagajob.com/bww-logo.png","company_url": "https://www.snagajob.com/company/buffalo-wild-wings","location": "New York, NY 10018","city": "New York","state": "NY","postal_code": "10018","country": "US","hourly_min": 16.5,"hourly_max": 22.0,"wage_currency": "USD","wage_period": "hour","wage_text": "$16.50 - $22.00 / hour + tips","employment_type": "part-time","shift": "evening","workplace_type": "onsite","category": "restaurant","tip_included": true,"teen_friendly": false,"transportation_provided": false,"description_snippet": "Buffalo Wild Wings is hiring servers for our Times Square location. Great tips, flexible schedule...","description_full": "Buffalo Wild Wings is hiring servers...\n\nResponsibilities:\n- Take orders and serve food...","description_html": "<div data-snagtag=\"job-description\">...</div>","description_md": "## About the Role\n\nBuffalo Wild Wings is hiring servers...","requirements": ["1+ year restaurant experience", "Must be 18+"],"job_tags": ["Urgently hiring"],"posted_at": "2026-08-01T14:12:00Z","posted_relative": "2 days ago","refreshed_at_datetime": "2026-08-18T00:00:00Z","posting_id": "687452301","search_query": "server","search_location": "New York, NY","serp_page": 1,"serp_position": 3,"scraped_at": "2026-09-05T10:00:00Z"}
Pricing
Three tiers based on how much data you need per job. All prices below are per 1,000 jobs written to your dataset.
SERP mode (default) - $12.00 per 1,000 jobs
Returns 20+ fields from the search results page: title, company, location (parsed to city/state/zip), hourly wage min/max/currency, employment type, shift, category, hourly-specific flags (tip, teen-friendly, transportation), workplace type, posted date, description snippet, job URL.
Full mode (includeJobDetails: true) - $27.00 per 1,000 jobs
Adds a per-job detail-page fetch: full description text + HTML + Markdown, extracted requirements bullets, job badge tags (urgently hiring, featured, remote etc.), refreshed_at_datetime, posting_id, application URL, refined company logo. Roughly doubles runtime.
Employer mode (includeCompanyDetails: true) - +$8.00 per 1,000 unique employers resolved
Adds a per-employer profile fetch: company_about, company_website, company_industry, company_headquarters, company_active_jobs_count, and up to 20 active_jobs. Deduplicated: 40 jobs from Buffalo Wild Wings count as 1 employer, not 40.
| Volume | SERP mode | Full mode | Full + Employer (5 unique employers) |
|---|---|---|---|
| 100 jobs | $1.20 | $2.70 | $2.74 |
| 1,000 jobs | $12.00 | $27.00 | $27.40 |
| 10,000 jobs | $120.00 | $270.00 | ~$274.00 |
Apify Free plan gives you $5 monthly platform credit, which covers ~400 jobs in SERP mode. Charged per job written; no monthly subscription, no hidden fees.
Pricing reflects the cost of the stealth-browser architecture required to reliably scrape Snagajob at volume. Customers who subscribed before 2026-09-03 are grandfathered on their original rate.
Input
{"searchQueries": ["server", "warehouse associate"],"location": "New York, NY","sortBy": "newest","maxResults": 100,"includeJobDetails": true,"includeCompanyDetails": true}
You can also pass startUrls with pre-built Snagajob URLs to preserve advanced filters (radius, category, shift):
{"startUrls": ["https://www.snagajob.com/jobs/search?q=cashier&location=chicago%2C+il&radius=15"],"maxResults": 200}
Input fields
| Field | Type | Description |
|---|---|---|
searchQueries | string[] | One or more job search terms combined with location. |
startUrls | string[] | Pre-built Snagajob search URLs; overrides searchQueries + location. |
location | string | US city, state, or zip. Empty = Snagajob decides, no fallback. |
sortBy | enum | "newest" (only accepted value). Snagajob does not expose a server-side sort control; SERP is site-native ordering. |
includeJobDetails | bool | Fetch each PDP for full description, requirements, application URL, job_tags, refreshed_at_datetime, posting_id. |
includeCompanyDetails | bool | Fetch each employer profile page. Auto-enables includeJobDetails. |
maxResults | int | Cap on total jobs pushed (default 5). |
maxResultsPerQuery | int | Cap per individual query (default 5). |
startPage | int | 1-indexed page offset for pagination resumption. |
Output fields
Job identity
id,source_url,job_url,source_platform,application_urlposting_id(details mode): stable posting identifier from the detail page footer, durable across runs
Role
titledescription_snippet: short plain-text preview (always populated in details mode)description_full(details mode): full plain-text descriptiondescription_html(details mode): raw HTML from the job description blockdescription_md(details mode): Markdown-formatted descriptionrequirements[](details mode): extracted requirement bullet pointsjob_tags[](details mode): callout badges from the detail page (e.g. "Urgently hiring", "Featured", "Remote")
Company
company_name,company_logo_url,company_url- Employer mode adds:
company_about,company_website,company_industry,company_headquarters,company_active_jobs_count,company_active_jobs[]
Location
location(formatted),city,state,postal_code,country
Wage (hourly-first)
hourly_min,hourly_max,wage_currency,wage_period,wage_text
Schedule & type
employment_type(full-time, part-time, seasonal, temporary, gig)shift(day, evening, night, rotating)workplace_type(onsite, remote, hybrid)category(restaurant, retail, warehouse, delivery, healthcare, cleaning, hotel, customer_service, gig)
Hourly-workforce differentiators
tip_included(boolean): tip-earning roleteen_friendly(boolean): 14-16-year-old eligibletransportation_provided(boolean): employer transport benefit
Timing
posted_at(ISO): original listing creation date, from JSON-LD datePostedposted_relative(e.g. "2 days ago")refreshed_at_datetime(ISO, details mode): last re-post date from the detail page footer; only populated when it differs fromposted_atscraped_at(ISO)
Search metadata
search_query,search_location,serp_page,serp_position
Use with AI Agents (MCP)
Connect this actor to any MCP-compatible AI client: Claude Desktop, Claude.ai, Cursor, VS Code, LangChain, LlamaIndex, or custom agents.
Apify MCP server URL:
https://mcp.apify.com?tools=santamaria-automations/snagajob-us-scraper
Example prompts once connected:
"Use
snagajob-us-scraperto find server jobs in Chicago paying $18/hr or more. Return the top 20 as a table with title, company, wage, and tip flag."
"Use
snagajob-us-scraperto pull all teen-friendly retail jobs in Dallas, TX. Return the ones with transportation provided."
Why this scraper
Most job scrapers on Apify Store target white-collar, salaried roles. LinkedIn, Indeed, Glassdoor. Their "hourly rate" fields are often empty, their category buckets do not include "seasonal" or "gig", and none of them flag tip-eligibility or teen-friendly status.
Snagajob is the largest US catalog of hourly work: 100M+ registered hourly workers, 700K+ active listings across restaurant, retail, warehouse, delivery, and gig verticals. This actor treats Snagajob's data model as first-class: hourly wage min/max as separate typed fields, not stuffed into salary_text; shift schedule; tip-earning flag; teen-eligible flag; transportation-provided flag. Plus employer profile enrichment for lead-gen use cases.
The actor uses a stealth Firefox browser architecture (Camoufox + US residential proxy + homepage warm-walk) to reliably bypass Snagajob's Cloudflare protection: HTTP-only scrapers currently return 403 on this site.
Use cases
Hourly workforce salary benchmarking Aggregate hourly wage ranges across roles, cities, and employers. Snagajob's wage data is dense: most postings publish an explicit hourly range.
Restaurant and retail hiring intel Track which brands are hiring, at what wages, in which markets. Buffalo Wild Wings, Starbucks, Chipotle, Target, Walmart, Amazon all post on Snagajob.
Gig and seasonal role research Snagajob categorizes seasonal roles (holiday retail, summer resort, warehouse peak) that vanish from general job boards.
Youth employment research
The teen_friendly flag surfaces roles eligible for 14-16-year-olds: valuable for youth employment policy work or teen-focused platforms.
Lead generation for HR tech and workforce management vendors
includeCompanyDetails=true returns employer profiles with website, industry, headquarters, and active jobs count: qualified leads for anyone selling into hourly-employer segments.
Notes and limits
- Snagajob is a US-only site. This actor covers the US market. For other geographies, see our Indeed Scraper (60+ countries).
- Hourly-specific boolean flags (
tip_included,teen_friendly,transportation_provided) are extracted from explicit structured fields when Snagajob provides them, plus keyword inference from title and description text. False negatives are possible when a role qualifies but the posting does not describe it in searchable terms. - Employer profile enrichment (
includeCompanyDetails=true) deduplicates per unique employer URL. A single run with 50 postings from 5 employers charges 5company-detail-resultevents, not 50. - Cloudflare pass rate on the residential architecture is ~90%. Occasional retries add ~1.1x runtime overhead; this is priced into the SERP rate.
- Direct URL navigation to filtered SERPs works, but the actor prefers a natural click-through pagination flow (Next button) after the first page: less flag-prone.
job_tags(e.g. "Urgently hiring") andrefreshed_at_datetimeare only populated in full mode (includeJobDetails: true). Both require a detail-page visit to extract.
Related Actors
Working across the US job market? These complement Snagajob:
- WayUp Scraper — US entry-level and internship jobs (adjacent early-career/entry segment).
- ZipRecruiter Scraper — US-focused aggregator (broader coverage across hourly + salaried).
- Indeed Scraper — Global job listings from 60+ countries.
- Glassdoor Scraper — US flagship aggregator with employer reviews.
Broader coverage:
- LinkedIn Jobs Scraper — Salaried and professional postings globally.
- Google Jobs Scraper — Google for Jobs aggregator.
- BuiltIn Scraper — US tech startup jobs.
- Google Maps Scraper — Business location data for enrichment.
Support
Something looking off, or need a field this actor does not return yet? Open an issue on the Issues tab or email contact@nanoscrape.com. We usually reply within 6 hours.