Privacy Policy
OmniSnap AI Studio does not collect, transmit, sell or share any personal information. It has no servers, no accounts and no analytics. Everything it does happens inside your own browser, on your own device.
1. The short version
We collect nothing. OmniSnap AI Studio has no backend service. There is no server of ours for it to contact, so it sends no telemetry, sets no tracking identifier and requires no account. Screenshots, page measurements, diagnostics and anything the AI writes stay in your browser's local storage on your own machine until you delete them or remove the extension. The only requests it makes at all are to the page you are capturing, to fetch images and fonts that page already loaded. This is explained in section 5.
The rest of this document explains that in detail, because a claim this broad deserves to be checkable rather than taken on trust.
2. Who this policy is from
This policy covers the Chrome extension OmniSnap AI Studio (“the extension”) and this website. The extension is published and maintained by its independent developer, reachable at the address in section 15. Where this policy says “we”, it means that developer.
3. What we collect
Nothing. We operate no server that could receive your data, so there is no collection to describe. Specifically, we do not collect, receive, store, transmit, sell, rent or share:
- Your name, email address, or any other personally identifying information.
- Your screenshots, captured pages, or anything extracted from them.
- Your browsing history, the URLs you visit, or which pages you capture.
- Usage statistics, feature analytics, crash reports or performance telemetry.
- Cookies, advertising identifiers, device fingerprints or any other tracking identifier.
- Authentication tokens, passwords, payment details or financial information.
- Location data, health data or personal communications.
The extension contains no analytics SDK, no advertising library and no remote-code loader. Its content security policy restricts scripts to the extension's own package, which means it cannot load or run code from anywhere else even if it wanted to.
4. What the extension accesses on your device
Collecting nothing is not the same as accessing nothing. To do its job, the extension reads the following locally. None of it leaves your device.
Page content, when you ask for a capture
When you start a capture, the extension reads the tab you are on: its rendered pixels, its text and layout geometry, its computed styles, and the addresses of images and fonts it references. This is what produces the screenshot, the measured redlines, the design tokens and the editable Figma paste. It happens only for a capture you started, on the tab you started it from.
Diagnostics, when you enable them
If you switch on QA diagnostics, the extension also reads performance timings (Web Vitals), the network requests the page made with their timing and size, how much data the page has in local, session and IndexedDB storage, your browser and operating system version, viewport and screen size, and your connection type as the browser reports it. This forms the defect report.
Console output, only if you explicitly switch it on
Console recording is off by default and is a separate switch. When on, a
small recorder listens for console.error and console.warn calls
and uncaught errors, so they exist to be attached to a ticket afterwards. It records only
those two levels. console.log, console.info and
console.debug are left untouched, and it keeps a fixed-size buffer in page
memory, nothing more.
Be aware of what a capture can contain. A screenshot of a page you are signed in to will show whatever that page shows, which may include personal or confidential information. The same is true of diagnostics: a URL or a console message can contain identifiers. This stays on your machine, but you control where you then send the exported file. The Studio includes a blur tool for redacting regions before you export, and a detector that flags likely personal data on the capture.
5. The only network requests it makes
To be precise rather than merely reassuring: OmniSnap is not completely silent on the network, and it would be wrong to claim otherwise.
When a capture embeds an image, a background or a font so the result is self-contained, the extension re-requests that file from the same address the page already loaded it from: the same servers your browser had just contacted to render the page in front of you. For same-origin and CORS-enabled files this reuses your existing session, exactly as the page itself did, so a logged-in image loads as it appears on screen.
These are ordinary downloads, and the direction matters: data comes in. Nothing about your capture, your activity or you is sent out in them. They never reach us, because there is no server of ours to reach, and they go nowhere your browser had not already been a moment earlier.
Apart from those, the extension makes no network request whatsoever. No analytics ping, no update beacon, no AI call, no error report.
6. Where that data is stored, and for how long
| What | Where | How long |
|---|---|---|
| Captures | Your browser's IndexedDB, on your device | Only the most recent capture is kept; a new capture replaces it |
| Annotations & AI drafts | Stored with the capture they belong to | Deleted when that capture is replaced or deleted |
| Preferences | chrome.storage, on your device |
Until you change them or remove the extension |
| Exported files | Your Downloads folder, when you click export | Yours. We never see them |
Uninstalling the extension removes its storage, and with it every capture, annotation and preference. You can also clear it at any time from the Studio or through Chrome's own site data controls.
7. Permissions and why each one exists
Chrome asks you to approve the permissions below. This is the complete list, and the same explanation we give in our Chrome Web Store listing.
| Permission | Why it is needed |
|---|---|
| activeTab | Reads and captures the tab you are on, only after you click the extension's icon or press its keyboard shortcut. This is how the screenshot is taken. |
| scripting | Injects the capture controller into the current tab on demand so the page can be measured and scrolled while it is photographed. No content script runs automatically; injection happens only for a capture you started. |
| offscreen | A service worker has no DOM and cannot use a canvas. The offscreen document stitches the captured viewport tiles into a single image and encodes exports. |
| storage | Remembers your capture preferences: format, quality, breakpoint, pacing and which panels to include. No page content is stored here. |
| downloads | Saves the exported image, SVG, PDF or asset bundle to your Downloads folder when you click an export button. |
| clipboardWrite | Backs “Copy image”, “Copy SVG” and “Copy for Figma”, which place the capture on your clipboard so you can paste it into Figma, a ticket or a chat. |
| debugger |
Used for exactly three features: Turbo capture (one-pass full-page render), the
Responsive Matrix, and rendering a page at a chosen breakpoint. All three require
Chrome DevTools Protocol commands that have no extension API equivalent. The
debugger is attached only while one of those runs and detached immediately
afterwards, including on error, and Chrome displays its own banner the entire
time it is attached. Captures work without it, falling back to scroll-stitching
and telling you so. It is a required rather than optional
permission only because Chrome refuses to grant debugger through the
optional-permission API.
|
| <all_urls> | Optional. Off by default. Never requested at install. Asked for only when you switch on “Record console & errors”, because console messages and uncaught errors are events that nothing retains. Recording them requires a listener registered before a page runs its first line, on sites you have not visited yet. Switching the feature off unregisters the recorder and hands the permission back. Every other capability works without it. |
8. On-device AI
The Handoff writer uses Chrome's built-in LanguageModel API, which runs
Google's Gemini Nano model locally on your own hardware. It is part of
Chrome itself, not a service we operate or connect to.
- The extension holds no API key and contacts no AI provider.
- Your capture, its diagnostics and anything you type are processed on your device and are never transmitted.
- Conversations are stored alongside the capture they belong to and are deleted with it.
- The model file itself is downloaded and managed by Chrome, under Google's own terms for Chrome features. We neither control nor observe that download beyond showing you its progress.
- If your browser or device cannot run the model, the feature hides itself and the rest of the extension works normally.
9. Chrome Web Store data disclosures
These are the declarations we make on the Chrome Web Store's privacy tab, reproduced here so you can check them against this policy.
| Data type | Collected? |
|---|---|
| Personally identifiable information | No |
| Health information | No |
| Financial and payment information | No |
| Authentication information | No |
| Personal communications | No |
| Location | No |
| Web history | No |
| User activity | No |
| Website content |
Accessed locally Screenshots, page text and styles of the page you choose to capture. Processed entirely on your device and never transmitted to us or anyone else. |
We also certify, and this policy commits us to, all three of the following:
- We do not sell or transfer user data to third parties, outside of the approved use cases.
- We do not use or transfer user data for purposes unrelated to the extension's single purpose.
- We do not use or transfer user data to determine creditworthiness or for lending purposes.
All three are true for the simple reason that captured content never leaves your device, so there is nothing for us to sell or transfer.
10. Third parties
We share your data with no one. The extension integrates no third-party service, SDK, analytics provider, advertising network, error reporter or content delivery network. Nothing about a capture is transmitted to anybody, ours or otherwise.
The one qualification is the asset downloads described in section 5: fetching an image back from the site you are capturing does contact that site's own servers. That is a download from a server your browser had already loaded the page from, carrying no information about you beyond an ordinary request for a file it has just served. We do not consider that data sharing, but we would rather state it than let you discover it.
When you export or copy a capture, you control where it goes next. If you paste it into Figma, send it in a ticket or attach it to a message, that destination's own privacy policy applies to it from that point on. We have no visibility into or control over that.
11. This website
This site is static. It sets no cookies, runs no analytics or tracking scripts, and loads no fonts, scripts, stylesheets or images from any third-party domain. A product whose claim is “nothing leaves your machine” should not open connections to other people's servers to render its own homepage.
It is hosted on Netlify, which as a hosting provider processes standard server request logs (such as IP address and user agent) for delivery and security purposes. That processing is governed by Netlify's privacy policy. We do not add any tracking of our own, and we do not access or analyse those logs to profile visitors.
12. Your control and your rights
You remain in control of everything at all times:
- Delete a capture from the Studio at any time.
- Revoke optional access by switching console recording off, which hands the site permission back to Chrome immediately.
- Remove everything by uninstalling the extension; Chrome deletes its storage with it.
- Inspect it yourself. Chrome's own task manager and DevTools will confirm the extension makes no outbound requests.
Privacy laws such as the GDPR and the CCPA give you rights of access, correction, deletion and portability over personal data a company holds about you. We hold none, so there is nothing for us to disclose, correct, delete or export, and no data sale to opt out of. Your data is already entirely in your own hands. If you would like confirmation of this in writing, contact us and we will provide it.
13. Children
OmniSnap AI Studio is a professional tool for designers, QA engineers and developers. It is not directed at children, and we do not knowingly collect information from anyone of any age, because we do not collect information at all.
14. Changes to this policy
If this policy changes, the “last updated” date at the top will change with it, and the revised policy will be published at this address before the corresponding extension release reaches the Chrome Web Store. If a future version of the extension ever collected or transmitted data, which is not planned, we would say so clearly here and ask for your consent in the extension first, rather than changing this page quietly.
15. Contact
Questions about this policy, about how the extension handles data, or a request for written confirmation of anything above:
We aim to reply within a few working days.