SheetWatch
SheetWatch · Legal

Privacy Policy

This policy explains what data SheetWatch collects, how Google user data is accessed and stored, who it is shared with, how long it is kept, and how to delete it.

Effective 15 August 2026 Last updated 15 August 2026 Version 1.0

Summary

  • SheetWatch is a Google Sheets change-monitoring service. It polls spreadsheet ranges you select, detects cell-level changes, and notifies you.
  • We never sell your data. Google user data is not sold, rented, or shared with advertisers, data brokers, or credit bureaus.
  • We never train AI on your data. Google user data is not used to develop, improve, or train generalized artificial intelligence or machine learning models.
  • We store the cell ranges you choose to watch. This is required to compute before-and-after differences. Nothing outside your selected range is stored.
  • One cookie only. A strictly necessary signed session cookie. No analytics, no advertising, no tracking pixels.
  • You can revoke access instantly at myaccount.google.com/permissions, and request full deletion by email.

01Who we are

SheetWatch ("SheetWatch", "the Service", "we", "us") is operated by Prem Raichura, an independent software developer based in India, acting as the data controller for personal data processed through the Service.

Service nameSheetWatch
OperatorPrem Raichura (individual developer)
CountryIndia
Service URLhttps://sheetwatch.vercel.app
Privacy contactpremraichura7@gmail.com

02Scope of this policy

This policy applies to the SheetWatch web application hosted at https://sheetwatch.vercel.app, its supporting API, and its background monitoring workers. It covers everyone who signs in with a Google account, as well as anyone who opens a public SheetWatch share link.

This policy does not cover Google Sheets, Google Drive, or any other Google product. Your use of those products is governed by Google's Privacy Policy. It also does not cover third-party destinations you choose to send notifications to, such as a Slack or Discord workspace; once a notification is delivered there, that platform's own privacy policy applies.

03Google user data

SheetWatch signs you in with Google OAuth 2.0. We never see, receive, or store your Google password. During sign-in, Google shows you a consent screen listing the permissions below, and you can decline at any point.

Scopes we request, and why

OAuth scopeSensitivityWhy SheetWatch needs it
.../auth/spreadsheets Restricted Read: fetch the cell range you chose to watch, on the interval you chose, so changes can be detected.
Write: used only when you explicitly accept a cross-sheet suggestion in the Compare feature, which writes that one value into the target cell.
.../auth/drive Restricted List the spreadsheets you own or that are shared with you, so you can pick one to watch without pasting a URL; read spreadsheet titles and modification timestamps; and move a spreadsheet to your Drive trash when you choose to remove it.
email Basic Identify your account, keep your watch list attached to it, and deliver email notifications and scheduled reports.
profile Basic Read your Google account identifier so returning sign-ins map to the same SheetWatch account.

What we store

DataStored?Detail
Google account emailYesYour account identifier and the default destination for email notifications.
Google account IDYesAn opaque, stable identifier issued by Google.
OAuth access and refresh tokensYesEncrypted at rest with AES-256-GCM. Required so background monitoring can run while your browser is closed.
Spreadsheet IDs, tab names, cell rangesYesThe configuration describing what you asked us to watch.
Cell values inside your watched rangeYesStored as point-in-time snapshots so a change can be diffed against the previous state. See Retention.
Change historyYesA summary and structured detail of each detected change, such as which cell moved from which value to which value.
Cell values outside your watched rangeNoNever fetched and never stored.
Google passwordNoNever transmitted to or seen by SheetWatch.
Drive files that are not spreadsheetsNoNot read and not stored.
Google contacts, calendar, or GmailNoNot requested and not accessible.

On the breadth of the Drive scope. The drive scope technically grants access to all files in your Google Drive. SheetWatch's code only ever queries spreadsheet files, reads their titles and modification times, and — at your explicit request — moves a spreadsheet to trash. We do not read, download, index, or store any other file. If you prefer to grant less, you can watch sheets by pasting a URL instead of browsing, and revoke access at any time.

What we do not do with Google user data

  • We do not sell it, rent it, or trade it.
  • We do not transfer it to advertising platforms, data brokers, information resellers, or credit bureaus.
  • We do not use it to serve, target, or measure advertisements.
  • We do not use it to develop, improve, or train generalized artificial intelligence or machine learning models.
  • We do not allow humans to read it, except in the narrow cases listed in the next section.

Human access

A human being reads your Google user data only when one of these is true:

  • You give explicit, specific consent — for example, you send us a screenshot or ask us to debug a particular sheet.
  • It is necessary for security purposes, such as investigating a suspected abuse or an active vulnerability.
  • It is required to comply with applicable law.
  • The data is aggregated and fully anonymised, and is used for internal operations such as capacity planning.

04Google API Services Limited Use disclosure

SheetWatch's use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements.

Concretely, this means SheetWatch limits its use of data obtained through Google APIs to providing and improving the user-facing features that are prominently described in the SheetWatch interface — monitoring the sheets you select, detecting changes, showing you history, and sending you notifications. Any other use requires your explicit consent.

05Other data we collect

CategoryExamplesSource
Watch configuration Poll interval, tab and range scope, row-match rules, alert rules, pause and snooze state, project grouping, labels and colours You
Notification settings Web push subscription endpoint and encryption keys, webhook URLs for Slack, Discord, or a generic endpoint, Telegram chat ID, quiet-hours window, digest cadence You
Delivery logs Channel used, destination label, notification title and body, status, error message, retry count, timestamps Generated by the Service
Interface preferences Theme, accent colour, density, font scale, animation setting, default landing tab, time format You
Dashboard objects KPI widgets, chart widgets, comparison groups, scheduled report settings, share links and their view counts You
Technical logs IP address, request time, user agent, error traces. Used for rate limiting, abuse prevention, and debugging. Automatic

Some interface preferences are also cached in your browser's localStorage under the key sw:prefs so the correct theme paints before the app loads. That data stays on your device and is cleared when you clear site data.

06Why we process data

  • To run the core feature. Fetch your watched range on schedule, compare it to the previous snapshot, and record what changed.
  • To notify you. Send web push, email, Slack, Discord, generic webhook, or Telegram messages according to the rules you configured.
  • To show history. Render change timelines, KPI tiles, charts, and comparison suggestions.
  • To deliver scheduled reports. Generate PDF or CSV summaries and email them on your chosen cadence.
  • To keep you signed in. Maintain an authenticated session.
  • To keep the Service safe and available. Rate limiting, abuse detection, error monitoring, and capacity planning.
  • To comply with law. Respond to valid legal process and enforce our Terms.

08Cookies

SheetWatch sets exactly one cookie. There are no analytics, advertising, or tracking cookies, and no third-party tracking pixels.

NamePurposeAttributesLifetime
sw_session Strictly necessary. Holds your signed session so you stay logged in, and carries a one-time state value that protects the OAuth sign-in against cross-site request forgery. HttpOnly, Secure, SameSite=None, cryptographically signed 30 days

The cookie is HttpOnly, so page scripts cannot read it, and SameSite=None; Secure because the app front end and its API are served from different origins. Because this cookie is strictly necessary to deliver a service you requested, no consent banner is required for it.

09Sharing and subprocessors

We do not sell your data. We share it only with infrastructure providers that operate the Service on our behalf, and with destinations you explicitly configure.

ProviderRoleData involved
Google LLCOAuth sign-in, Sheets API, Drive APIYour Google identity and the spreadsheet data you asked us to watch
Vercel Inc.Web and API hostingAll request traffic, including IP addresses
Neon Inc.Managed PostgreSQL databaseAll stored account, configuration, snapshot, and log data
Cloudflare, Inc.Realtime WebSocket deliveryLive update events for your open browser tabs
Upstash, Inc.Scheduled job triggers and queueingJob metadata; no spreadsheet contents
Resend, Inc. or your configured SMTP providerEmail deliveryYour email address, notification text, and report attachments
Browser push services (Google FCM, Mozilla, Apple)Web push transportEncrypted push payload and your push endpoint, determined by your browser vendor
Telegram FZ-LLCTelegram notifications, only if you enable itYour chat ID and notification text
Slack, Discord, or your own endpointWebhook notifications, only if you configure themNotification text sent to the URL you supplied

We may also disclose data if required by valid legal process, to enforce our Terms of Service, or to protect the rights, safety, and property of our users or the public. If the Service is ever transferred to another operator, we will give notice in the app before your data moves, and you will be able to delete your account first.

11Retention

DataKept for
Account record, OAuth tokens, preferencesUntil you delete your account or revoke access
Watch configurationUntil you delete the watch or your account
Snapshots of watched cell rangesThe 50 most recent per sheet are kept. Beyond a 7-day detail window, only one snapshot per day is retained; the rest are pruned automatically.
Change historyUntil you delete the sheet or your account. Archiving a sheet stops monitoring but deliberately keeps its history.
Notification delivery logsUntil you delete your account
Revoked share linksThe record is retained after revocation so the view-count history stays intact; the link itself stops working immediately
Technical and error logsTypically 30 days, subject to our hosting providers' own retention

Deleting a sheet from SheetWatch cascades to its snapshots, change history, widgets, and webhook associations. Deleting your account cascades to everything listed above.

12Security

  • Token encryption. Google access and refresh tokens are encrypted at rest with AES-256-GCM using a 32-byte key held outside the database. The Service refuses to start with a weak or placeholder key.
  • Transport encryption. All traffic between your browser, our API, and Google runs over HTTPS/TLS.
  • Session hardening. The session cookie is signed, HttpOnly, and Secure. Signing keys can be rotated without logging users out.
  • CSRF protection. The OAuth round-trip is bound to your browser session with a one-time state value.
  • Server-side request forgery defence. Outbound webhook URLs are validated to block internal and private network hostnames.
  • Rate limiting. Authentication and API endpoints are throttled per IP address.
  • Least storage. Only the cell range you select is ever fetched or retained.

No system is perfectly secure. If you believe you have found a vulnerability, please email premraichura7@gmail.com rather than disclosing it publicly, and allow reasonable time for a fix. If a breach affects your personal data, we will notify you and the relevant authority as required by applicable law.

13International transfers

SheetWatch is operated from India and runs on cloud infrastructure whose regions may be located in the United States, the European Union, or elsewhere. Using the Service therefore involves transferring your data across borders. Where the GDPR applies, such transfers rely on the European Commission's Standard Contractual Clauses or an equivalent safeguard offered by the relevant provider. Each provider listed in Sharing and subprocessors maintains its own transfer safeguards.

14Your rights

Depending on where you live, you may have the following rights. We honour these requests for all users regardless of location.

  • Access. Ask what personal data we hold about you and receive a copy.
  • Rectification. Ask us to correct inaccurate data. Most fields are directly editable in the app.
  • Erasure. Ask us to delete your account and all associated data.
  • Portability. Receive your change history in a machine-readable format. The app also exports reports as CSV.
  • Restriction and objection. Ask us to pause certain processing, or object to processing based on legitimate interests.
  • Withdraw consent. Revoke Google access or disable an integration at any time, without affecting processing already carried out.
  • Complain. Lodge a complaint with your local supervisory authority, or in India with the Data Protection Board.

To exercise any right, email premraichura7@gmail.com from the Google account you signed in with. We respond within 30 days. We do not charge a fee, and we do not discriminate against you for exercising a right.

15Deleting your data

Revoke Google access

Go to myaccount.google.com/permissions, select SheetWatch, and choose Remove access. This takes effect immediately and stops all further reading of your sheets. Any tokens we hold become permanently unusable.

Delete individual items

In the app, deleting a tracked sheet removes its snapshots, change history, and widgets. Revoking a share link disables it instantly.

Delete your entire account, from inside the app

Go to Settings → Account → Danger zone and choose Delete account. You will be asked to type your account email to confirm. Deletion is immediate and permanent: we revoke SheetWatch's grant on your Google account, then erase your account record, OAuth tokens, watch configuration, snapshots, change history, widgets, webhooks, push subscriptions, scheduled reports, share links, and notification logs. No email, no waiting period, and no request for us to process.

Your spreadsheets themselves are never touched by deletion — they remain in your Google Drive exactly as they were.

Backups holding residual copies are overwritten on their normal rotation, within 90 days at the outside. If you would rather we handled it, or you have lost access to the account, email premraichura7@gmail.com from the Google account you signed in with and we will erase it within 30 days.

Revoking access in your Google account stops SheetWatch from reading anything new, but it does not by itself erase data we already stored. To remove that too, use the in-app deletion above.

16Children

SheetWatch is not directed at children and is not intended for anyone under 16, or under 18 in India where a parent or guardian has not provided verifiable consent. We do not knowingly collect personal data from children. If you believe a child has provided us with personal data, email us and we will delete it.

17Changes to this policy

We may update this policy as the Service changes or the law requires. The Last updated date at the top always reflects the current version. For material changes — for example, requesting a new OAuth scope or adding a new category of data sharing — we will give notice in the app before the change takes effect, and where the law requires it, ask for your consent again. Continuing to use SheetWatch after a change takes effect means you accept the updated policy.

18Contact

For any privacy question, data request, or security report, email premraichura7@gmail.com. Please write from the Google account associated with your SheetWatch account so we can verify the request. We aim to acknowledge within 7 days and resolve within 30.

19Frequently asked questions

Does SheetWatch sell or share my Google data?

No. SheetWatch does not sell, rent, or trade Google user data, and does not transfer it to advertisers, data brokers, information resellers, or credit bureaus. Google user data is never used to train artificial intelligence or machine learning models.

Does SheetWatch store the contents of my spreadsheets?

Only the cell range you explicitly choose to watch. SheetWatch stores point-in-time snapshots of that range so it can compute a before-and-after difference when something changes. Cells outside your selected range are never fetched and never stored. Snapshots are pruned automatically: the 50 most recent per sheet are kept, and beyond a 7-day detail window only one snapshot per day is retained.

Can SheetWatch edit or delete my spreadsheets?

Only in two situations you trigger yourself. First, when you explicitly accept a cross-sheet suggestion in the Compare feature, SheetWatch writes that one value into the target cell. Second, when you choose to remove a spreadsheet from the Sheets page, SheetWatch moves that file to your Google Drive trash, where you can restore it. During routine monitoring SheetWatch only reads.

Why does SheetWatch ask for full Drive access?

The Drive scope lets SheetWatch list the spreadsheets you own or that are shared with you, so you can pick one from a browser instead of pasting a URL, and lets it move a spreadsheet to trash when you ask. SheetWatch only queries spreadsheet files and never reads, downloads, or stores any other file in your Drive.

How do I delete my account and all my data?

Open Settings → Account → Danger zone and choose Delete account, then type your account email to confirm. Deletion is immediate and permanent: SheetWatch revokes its Google grant and erases your account record, OAuth tokens, tracked sheets, snapshots, change history, widgets, webhooks, share links, and notification logs. Your spreadsheets are never touched and stay in your Google Drive. If you would rather we handled it, email premraichura7@gmail.com from the registered account.

Does SheetWatch use tracking cookies or analytics?

No. SheetWatch sets exactly one cookie, a signed session cookie named sw_session that is strictly necessary to keep you signed in. There are no analytics cookies, no advertising cookies, and no third-party tracking pixels.

Where is my data stored?

In a managed PostgreSQL database operated by Neon, with the application hosted on Vercel and realtime updates delivered through Cloudflare. Regions may be in the United States, the European Union, or elsewhere, so using SheetWatch involves international data transfers.

Who can see my public share links?

Anyone who has the URL. Share links are unguessable but not access-controlled, so treat them like public web pages. They expose only the KPI widget values you selected and the board title, never your email address or your other sheets. You can revoke a link at any time in Settings.