Protect yourself from fraudulent job postings with 40+ detection signals, intelligent scoring, and real-time analysis across every major job platform.
Three steps from suspicious URL to actionable safety score โ in milliseconds.
Drop in any job posting URL or paste the description directly. Supports LinkedIn, Indeed, RemoteOK, USAJobs, Remotive, and plain text.
40+ signals fire in parallel โ regex patterns catch red flags in under 10ms, while NLP models analyze sentiment, structure, and linguistic cues.
A confidence score from 0โ100 with a full signal breakdown, category weights, and actionable guidance on what to investigate.
Every design decision prioritizes accuracy โ because false positives cost people jobs, and false negatives cost people money.
40+ independent signals spanning red flags, structural patterns, ghost job indicators, linguistic markers, and positive trust signals โ each calibrated against a dataset of 1,500+ real postings.
Confidence grows with accumulated evidence rather than binary rules. Multiple weak signals combine correctly, and contradictory positive signals reduce false alarms โ like a trained investigator would reason.
Detection improves continuously based on user-reported outcomes. Scam tactics that evade today's detectors get caught faster tomorrow as the system adapts.
Regex-based signals complete in under 10ms per posting, making it viable to scan hundreds of listings during a job search session without perceptible delay.
Native scrapers for LinkedIn, RemoteOK, Indeed, USAJobs, and Remotive โ with a generic extractor that handles any URL. Job boards update their HTML; our adapters stay current.
Analyze postings inline as you browse. Risk badges appear directly on job listing cards โ no copy-paste needed. Works on Chrome, Firefox, and Edge.
Paste a job description below and get an instant client-side scam analysis. No data is sent to any server.
Every signal is hand-crafted, independently weighted, and continuously validated against known scam patterns.
Built with rigor, tested against reality.
Installable via pip. Works as a CLI, Python library, or REST API.
$ pip install sentinel # or install from source $ git clone https://github.com/ericrihm/JobSentinel $ cd JobSentinel && pip install -e .
# Scan a single URL $ sentinel scan "https://linkedin.com/jobs/view/..." # Analyze a text file $ sentinel analyze posting.txt # Batch scan from a list $ sentinel batch urls.txt --output results.json
from sentinel import Sentinel s = Sentinel() result = s.analyze(url="https://...") print(result.score) # 78 print(result.verdict) # HIGH_RISK print(result.signals) # [...signals...]
โ JobSentinel v0.9.0 Analyzing: linkedin.com/jobs/view/... Score: 78 / 100 (HIGH RISK) Signals: 6 triggered โ upfront_payment (+35) โ ssn_early (+40) โ urgency_pressure (+22) โ structured_process (-12)
MIT licensed. Built in the open, improved by the community.
Add new signals, improve scrapers, report false positives. See CONTRIBUTING.md to get started.
ContributeFound a missed scam pattern or a false positive? Open an issue with the posting (redacted) and we'll fix it.
Open Issue