What we collect
Account data: your name, email address and, if you sign in with Google, your Google profile identifier.
Store data: the URLs we crawl on stores you ask us to scan, the HTML those URLs return, and the product information we extract from it.
Integration data: when you connect Google, an encrypted refresh token plus the Merchant Center account identifier you select.
Usage data: counts of scans, pages crawled, products analysed, AI requests and exports, used to enforce plan limits.
What we do not collect
We never store raw IP addresses for anonymous scans. We store a salted hash so we can enforce a per day limit and nothing else.
We never store your Google access or refresh tokens in readable form, and we never display them in the interface.
We do not place orders, submit forms, enter payment details or create accounts on the stores we scan.
Retention
Raw and rendered page HTML is deleted after 7 days. It exists only so a report can show you the exact markup we saw.
Normalised audit data such as issues, scores and product snapshots is retained for as long as your account exists, so historical trends remain meaningful.
Unclaimed anonymous scans and the throwaway workspaces holding them are deleted after 7 days.
Deletion
You can delete your account from Settings. Deleting an organization removes its sites, scan data, stored HTML, product snapshots, OAuth tokens, reports and every other row that belongs to it. This is enforced by database level cascades, not by a cleanup script that might not run.
Disconnecting Google deletes the stored refresh token and attempts to revoke it with Google. Historical scans are kept so your trend data survives.
Subprocessors
Google, for Merchant API and Search Console access you explicitly authorise, and for Google Analytics if you accept analytics cookies.
Stripe, for payments. Card details are handled by Stripe and never reach our servers.
Resend, for transactional email.
Where configured by the deployment, an AI provider for optional suggestion generation. Only the specific product text needed for a suggestion is sent, and only when you press the button.
Contact
Questions about any of the above: support@webshopvitals.com.
Everything above describes behaviour that is enforced in code rather than promised in policy. Deletion runs on database cascades, token encryption uses a key the interface never exposes, and anonymous scan limits work off a salted hash instead of a stored address.
