How we verify
Remote Desi does not trust the word “remote”. Every posting gets one of three verdicts, and every verdict carries the sentence from the posting that justifies it.
Live numbers
1.6% of the live job postings we crawl are both remote and open to India. Last refresh: 29 Oct 2026, 10:42 UTC.
Two separate things have to be proven for a job to reach the default list: that the role is remote, and that someone located in India may take it. Of the 1,943 postings we can show as open to India, 536 are described as remote by the employer, 126 as hybrid, and 1,281 name an Indian city without ever saying the role is remote — usually office roles. Only the remote ones are listed by default; the rest are one click away under “Working arrangement”, labelled for what they are.
Separately, 491 of the 2,434 postings verified as open to India are held back, not deleted: 211 have gone 90 days without the employer changing them, and 280 are marked on-site by the employer.
The three verdicts
- Open to India. The posting itself says applicants located in India are eligible — a location such as “Remote - India”, “Home based - Worldwide”, “Remote, Global”, “APAC”, or a sentence in the description — and nothing in the text contradicts it. This is the default list.
- No restriction stated (unclear). The posting says “remote” but never says where you must be. We do not treat silence as “open”. These sit in a separate tab labelled “check before applying”.
- Region-locked. The posting restricts applicants to another country or time zone (“US only”, “must be authorised to work in the UK”, “within 3 hours of PST”). These are never shown as jobs; they are only counted above.
The three tiers
- Structured rules. Country fields and location strings from the employer's own job board (for example a Lever
country: IN, or a Greenhouse location “Remote - India”). A match makes a posting a candidate; it still goes through the exclusion patterns, and the model re-checks it whenever it is available. - Exclusion patterns. A fixed list of phrases that restrict location or work authorisation (“United States only”, “EMEA only”, “located in Canada”, time-zone windows around US zones). A hit means region-locked unless the text also explicitly names India, APAC or worldwide — then tier 3 decides.
- A small language model that must quote. For what is left, and as a second opinion on every tier-1 match, a model reads the title, the location fields and the full description and returns a verdict with a verbatim sentence as evidence and a confidence. It is instructed not to infer anything the text does not say; “no restriction stated” must come back as unclear, never open.
When the model has not run yet. A posting whose own location or region field names India, worldwide or APAC is shown as open on that quoted field (the job page marks it “tier 1”) and is re-checked by the model as soon as it is available. Everything else, including description-only hints and conflicting signals, waits as unclear. Nothing that hits an exclusion pattern is ever shown as open. Right now 2,434 of the 2,434 open postings are shown on tier-1 evidence and still await the model check.
Every open posting is re-checked every 72 hours or whenever its description changes.
Where the jobs come from
Only sources whose public endpoints and terms allow it, always linking to the employer's own page:
- Greenhouse, Lever and Ashby public job-board endpoints (the employer's own ATS).
- We Work Remotely category RSS feeds (shown with attribution and a link back).
- Jobicy API (shown with attribution; the Jobicy URL is preserved as required by their terms).
Never fetched: Naukri, LinkedIn, Indeed, Glassdoor, Internshala and Remotive — their terms forbid scraping or republishing. SmartRecruiters is disabled until its robots.txt permits crawling. We honour robots.txt, make at most one request per second per host and identify our crawler with a contact address.
Pay
Pay is shown only when the employer publishes it, verbatim and in the published currency. If it is absent we show “Not disclosed”. There is no estimation, no conversion to INR and no “typical range”.
Freshness, stale and hidden postings
- Boards are refreshed every 24 hours; high-value boards every 6 hours.
- A posting is closed when it disappears from the employer's board on two consecutive refreshes.
- A posting unchanged for 45 days gets a “posted 45+ days ago” badge; after 90 days it is hidden. Postings seen re-posted three or more times get a “re-posted” badge.
The report button
Every job has a “Report: not open to India” button. 2 reports (or one verified report) move the job out of the open list into “unclear” and queue a manual re-check. We store a salted hash of the reporter's address, nothing else. We track the resulting false-positive rate and aim to keep it under 5%.
What we never do
- Submit an application on your behalf. Every button opens the employer's page.
- Infer your work authorisation, demographics or anything else you did not state.
- Show a region-locked posting as a job.