Table → Excel, CSV & clipboard
Privacy policy
Gridpick reads a table on a page you are already looking at, builds a spreadsheet out of it, and hands you the file. Nothing about that needs a server, so there isn't one.
- Last updated 23 August 2026
- Applies to Gridpick 1.0.0 and later
- Chrome · Edge · Firefox
-
Collected
Nothing at all
No account, no email, no analytics, no telemetry, no crash reports, no unique id. Not anonymised, not aggregated — none.
-
Transmitted
Nothing, anywhere
Gridpick contains no code capable of making a network request. There is no server to send anything to, and nobody to receive it.
-
Stored
Nine settings
Your preferences, and a licence key if you bought one. All nine are listed in full below, because “some settings” is not an answer.
1What happens when you export a table
The whole of it, in order. Every step runs inside your own browser, on your own machine:
- You click the Gridpick icon, press its keyboard shortcut, or pick it from the right-click menu. Until you do one of those three things, Gridpick cannot read the page at all — see §3.
- Gridpick puts its table-finding code into that one page and looks for tables. The code is part of the extension you installed; nothing is downloaded to run it.
- It reads the text of the tables it found — the same text you can see — and works out which cells are numbers, which are dates, and which merged cells cover which columns.
-
It builds the
.xlsx,.csvor clipboard text in memory, in the browser. - It hands the finished file to your browser's own download mechanism, or the text to your clipboard. Then it forgets the table.
The table contents are never written to disk by Gridpick, never saved into browser storage, and never sent over a network. The only thing that outlives the export is the file you asked for, in the folder your browser puts downloads in.
check it grep -rn "fetch(\|XMLHttpRequest\|WebSocket\|sendBeacon\|EventSource" src/ → no matches
2What Gridpick stores
Exactly nine values, and this is all of them. Eight are the settings you can change in the popup; the ninth is a licence key, which is empty unless you have bought one and typed it in.
| Key | What it holds | Default |
|---|---|---|
| format | Which file type to export: Excel, CSV, TSV or Markdown | xlsx |
| mergeMode | Whether a merged cell's value repeats across the cells it covered, or is left blank | repeat |
| dateOrder | How to read an ambiguous date like 03/04/2024 — work it out, or force day-first or month-first | auto |
| trimEmpty | Whether to drop rows and columns that are entirely empty | true |
| detectTypes | Whether numbers and dates become real numbers and dates, rather than text | true |
| guardFormulas | Whether a cell starting with = is neutralised so a spreadsheet shows it as text |
true |
| bom | Whether CSV files start with a byte-order mark, which Excel on Windows needs to read them as UTF-8 | true |
| delimiter | The character between CSV fields | , |
| licence | The licence key you typed in, if you bought one. Empty for everybody else | (empty) |
check it grep -rn "storage\.sync\." src/ → five call sites, all reading or writing the nine keys above
One honest caveat, because “nothing ever leaves your machine” would be a lie
Gridpick saves those nine values using your browser's built-in settings-sync storage. If you are signed into Chrome, Edge or Firefox and have sync switched on, your browser copies them to your other devices, in exactly the way it copies your bookmarks. That means the nine values travel through your browser vendor's servers — Google, Microsoft or Mozilla — under your own account and their privacy policy. I never see them, and have no way to.
If you would rather they stayed on one machine, turn off extension sync in your browser's sync settings, or don't sign in. Gridpick behaves identically either way: if storage can't be read it simply uses the defaults.
This applies to those nine settings and nothing else. No table content is ever written to storage, so no table content is ever synced anywhere.
3What each permission is for
Gridpick asks for six permissions. It is worth knowing what is not in that list: there is no permission to read your browsing history, no permission to read your tabs, and no list of websites Gridpick may run on. It reads the page you deliberately pointed it at, when you point it, and nothing else.
| Permission | Why Gridpick needs it |
|---|---|
| activeTab | To read the table on the page you are on. This is the important one, and it is the narrow version on purpose: the browser grants it for one tab, at the moment you click Gridpick or press its shortcut, and takes it away again when you navigate. Gridpick cannot read a page you have not asked it about, and cannot read anything in the background. |
| scripting | To put Gridpick's table-reading code into that page so it can see the tables. The code is bundled inside the extension — a Manifest V3 extension cannot download code to run, and Gridpick does not try to. |
| storage | To remember the nine settings in §2 between exports. |
| downloads | To save the finished spreadsheet to your downloads folder. Gridpick calls exactly one function here — the one that saves a file it has just built, with a filename it chose. It never lists, reads or opens your existing downloads. |
| contextMenus | To add the two “Gridpick: export…” items to your right-click menu. When you click one, the browser hands the event a copy of whatever text you had selected; Gridpick ignores it and instead asks the page which table your selection sits inside, then exports that table. |
| clipboardWrite | To put a table on your clipboard when you choose Copy, so it pastes into a spreadsheet with its grid intact. Gridpick writes to the clipboard and never reads from it. |
check it chrome://extensions → Gridpick → Details. “Site access” reads On click.
4Things Gridpick does not do
Some of these are worth stating plainly because other extensions in this category do them, and because a few are the reason extensions get removed from stores:
- No analytics, telemetry, usage counting, or crash reporting.
- No account, sign-in, email address, or unique installation id.
- No advertising, and no ad or tracking code of any kind.
- No affiliate links, and no rewriting of links on pages you visit.
- No changes to your search engine, homepage, or new-tab page.
- No code downloaded and run at runtime — everything ships in the package.
- No selling, renting or sharing of data, because there is no data to sell.
- No reading of pages you did not point Gridpick at.
- No background activity. Gridpick does nothing until you ask it to.
5The licence key, if you buy one
Gridpick's paid tier does not check in with anybody. A key looks like
GP1-XXXX-XXXX-XXXX, and its last group is a checksum over the first two —
Gridpick verifies it by doing that arithmetic on your own machine. There is no licence
server, so the key is never transmitted, and Gridpick keeps working on a plane.
The key is stored as the licence setting in the table above, which means the
sync caveat in §2 applies to it as well: your browser may copy it to your other devices,
which is usually what you want from a licence.
6Children
Gridpick is a tool for getting tables into spreadsheets and is not directed at children. It collects no personal information from anyone, of any age, so there is nothing it could collect from a child either.
7Your rights, and deleting your data
Data-protection law — the GDPR in Europe and the UK, the DPDP Act in India, the CCPA in California — gives you rights to see, correct, export and delete personal data a service holds about you. Gridpick holds none, which makes those requests short: there is no record of you to produce, correct or erase, and no consent to withdraw, because there is no processing to consent to.
To remove the nine settings: uninstall Gridpick, and your browser deletes the storage belonging to it. If browser sync had copied them to your account, they are removed through your browser's own sync controls — I have no access to your account and cannot reach them.
8Changes to this policy
If this page changes, the date at the top changes with it. If a future version of Gridpick ever needs to send anything anywhere, that will arrive as a new permission you have to approve, a new version number, and a plainly-worded explanation of what and why — not as a quiet edit to this page.
9Verifying all of this yourself
You do not have to take any of the above on trust, and this is the part of the policy that actually matters. Gridpick ships as readable JavaScript: no build step, no bundler, no minification. What you download is what runs.
-
On
chrome://extensions, turn on Developer mode. Gridpick's files are plain files on your own disk, in your browser profile'sExtensionsfolder, under the id shown on that page. -
Open any file in
src/in a text editor. It is ordinary, commented, human-written JavaScript — no bundler, no minifier, no build step. What you are reading is what is running. -
Search the whole folder for
fetch,XMLHttpRequest,WebSocket,sendBeaconandEventSource. There are no matches. An extension with no way to open a connection cannot send your data anywhere, whatever its privacy policy says. -
Watch it for yourself: on
chrome://extensions, open Gridpick's Details, click the service worker link under “Inspect views”, and switch to the Network tab. Now export a table. That panel lists every request the extension makes, and it stays empty. (Use this panel rather than the one on the web page — the page makes its own requests, which have nothing to do with Gridpick.)
10Contact
Questions about this policy, or about anything Gridpick does with your data, go to arsath1626@gmail.com. If you have found something on this page that is not true, that is the most useful email I can get, and I will fix the page or the extension.