Privacy Policy — Where's the remote?

Last updated: 12 August 2026 (revision 3)

"Where's the remote?" is a Chrome extension that reads job postings on LinkedIn and Indeed and shows whether a role is genuinely remote, hybrid, onsite, or requires travel, based on the posting's own description text rather than the platform's own label. This page explains what data the extension handles and why.

Your choice before checking begins

On the first supported jobs page you visit, the extension displays an inline explanation of the data handling described below. It does not extract or transmit job descriptions, generate or send an installation identifier, or create classification results unless you select Enable remote checks. Selecting Not now keeps remote checking off. You can enable it later from the same inline control, or withdraw consent at any time by selecting Pause remote checks. Withdrawing consent stops new classifications; you can separately clear classifications already saved on your device.

What data is read

The extension runs only on LinkedIn and Indeed job pages. It does not run on, or read, any other site. On those pages it reads:

It does not read your LinkedIn or Indeed account details, your messages, your connections, your saved or applied jobs, or any page outside the job sections of those two sites.

What data is sent off your device

To classify a job posting, the extension sends that posting's description text (up to 8,000 characters) to our backend — a Cloudflare Worker we operate — which forwards it to OpenAI's API to determine the classification. Alongside it, the extension sends a random identifier generated on your device when the extension is installed. This identifier exists purely so we can limit how many classification requests a single installation can make, protecting the service from abuse. It is a random value, is not derived from you or your device, and is not linked to any account. We never share its raw value with anyone; it is passed to OpenAI only as an irreversible hash, as an abuse-reporting reference.

Nothing else is sent. No LinkedIn or Indeed account details, browsing history, cookies, page URLs, search terms or the platform's own labels leave your device.

One caveat we want to be explicit about: job descriptions are written by employers and recruiters, not by us, and a description sometimes contains personal details such as a hiring manager's name, an email address or a phone number. When it does, that text is part of what gets sent for classification. We do not extract, store or use such details, but we cannot remove them from a description before it is classified.

The Worker is stateless: its own code does not log or store the description text, the classification result, or your installation identifier. It relays the request to OpenAI, validates the response, and returns it. The one record it writes per request is a count of tokens — the units of text a language model processes — so we can monitor cost and detect abuse. That record contains no description text, no classification result, and nothing identifying where the request came from.

Separately from the Worker's own code, we have Cloudflare's operational logging switched on for it. That is a platform feature rather than something we write: it records metadata about each request, which can include request headers and therefore the installation identifier described above. We use it only to monitor the service's cost, errors and availability. Requests also pass through Cloudflare's standard network logging.

OpenAI does not use data submitted through its API to train its models by default. OpenAI does retain API inputs and outputs for a limited period — up to 30 days under its standard policy — for abuse monitoring, after which they are deleted, except where OpenAI is required by law to retain them for longer.

What's stored on your device

Once a job posting has been classified, the result (category, a short reason, and, if relevant, how often office attendance is required) is cached using Chrome's local storage (chrome.storage.local) for 14 days, keyed to that job listing, so the same listing isn't re-classified every time you see it. Entries past 14 days are deleted when the extension next runs. These cached classifications are never transmitted anywhere — they are only read back on your own device. The random installation identifier described above is stored in the same place, but unlike the cache it is sent with each classification request, as described in the previous section. All of it is removed if you uninstall the extension.

Your "hide hybrid & non-remote roles" preference is stored using Chrome's synced storage (chrome.storage.sync). This means that if you are signed in to Chrome with sync enabled, this single on/off setting is synced to your Google account and to your other signed-in Chrome installations, the same way your bookmarks are. It is handled by Google, not by us — we never see it. No other data is synced. Disabling extension sync in Chrome's settings keeps it local to the device.

What we don't do

Chrome Web Store Limited Use

The use and transfer of information received by "Where's the remote?" complies with the Chrome Web Store User Data Policy, including its Limited Use requirements. We use this information only to provide or improve the extension's single remote-work classification purpose, and do not use or transfer it for advertising, profiling, lending, or other unrelated purposes.

Third parties involved

Changes to this policy

If the extension's data handling changes, this page is updated and the "last updated" date above changes with it. Material changes — anything that newly collects, transmits or shares data, or uses existing data for a new purpose — will be described here before the version that makes the change is released.

Contact

Questions about this policy can be sent to seanrapsontravel@gmail.com.