Privacy policy

What we collect and why.

WillItExpire uses Google Analytics to understand which pages are useful. Pantry data stays on your device unless you choose to sign in for cross-device sync. Here is exactly what gets sent where.

The short version Analytics loads only after you accept. We never send pantry contents, free-text search queries, or account email to Google Analytics. Guest pantry data stays in your browser; signing in syncs items to a Supabase account only you can access.

Analytics preferences

Choice · Stored on this device

Accept or reject analytics anytime.

WillItExpire gates Google Analytics 4 and product events behind your explicit choice. Your preference is stored in this browser as wie-analytics-consent (granted or denied). Until you choose, analytics scripts do not load.

What we collect when you browse

Browsing · Google Analytics (optional)

Basic site-usage information after consent.

When analytics is accepted, pages may load Google Analytics 4 to record page views, basic session information, and product events such as search used (result counts only — not the search text), pantry tracker CTAs, and sign-in method. This can include the page path visited, referral source, browser and device type, approximate location, and session timing. Google Analytics may store first-party analytics cookies only after consent.

We use these reports to understand which guides, food pages, and pantry tools help. We do not send your saved pantry item names, contents, or account email to Google Analytics. Your IP address may also appear in Hostinger's standard web-server access logs, which we use only to diagnose outages.

What we collect when you use the pantry tracker without signing in

Pantry tracker · Local-only mode

Items stored in your browser, never sent anywhere.

The default tracker mode keeps your saved items in your browser's localStorage. That data lives on your device only. We never see it; the hosting provider never sees it; no third party sees it.

Clearing your browser's site data, switching browsers, or switching devices will lose your tracked items unless you sign in.

What we collect when you sign in to sync

Pantry tracker · Signed-in mode

Email plus your saved items, stored in Supabase.

When you sign in via the tracker, we store your email address (used as your account identifier) and your saved pantry items in a Supabase database. Supabase is a third-party platform that provides authentication and a Postgres database. Our project is hosted in the us-west-1 region.

Inside Supabase, your data is protected by row-level security for normal client access: only requests authenticated as you can read or write your rows through the app. A scheduled reminder worker (when enabled) may use a restricted service role to scan expiry dates and reminder preferences so we can send background push or optional email digests — it is not used for advertising or resale.

Background reminders and push subscriptions

Notifications · Optional · Signed-in

Browser push endpoints and reminder preferences.

If you enable automatic reminders (after granting notification permission when available), we store a Web Push subscription for your account: the push endpoint URL and encryption keys supplied by your browser, plus a short user-agent string to debug delivery. You can disable all account devices’ push subscriptions in the pantry profile. If push is unavailable or delivery fails, an optional fallback email is sent to the verified email on your account. Each fallback email includes an opaque unsubscribe link that disables email only; push preferences are unchanged.

Reminder hour and related preferences may be stored on your device and, when the reminder service is fully configured, associated with your account so notifications respect your local time.

Content correction reports

Feedback form · Optional

Messages you send for human review.

The public correction form stores your report category, message text, optional food ID and page URL, and optional contact email so we can follow up. Submissions enter an internal review queue (New → Needs research → Accepted / Rejected / Published). They are never published automatically to food pages.

What gets stored, exactly

For each saved pantry item:

For your account:

What we never collect

Third parties involved

WillItExpire uses a small, deliberately short list of third-party services:

Analytics · Site usage

Google Analytics

Measures page views and basic session information so we can improve the site. Google processes this data under its own privacy policy.

Data processor · Sign-in and tracker sync

Supabase

Stores your email address and your saved pantry items when you sign in. Hosted in us-west-1. Supabase has its own privacy policy.

Host · Static file serving

Hostinger

Serves the static HTML / CSS / JS files of this site. Hostinger may keep server access logs containing IP addresses for diagnostic purposes. Hostinger has its own privacy policy.

Content delivery · Fonts and library code

jsDelivr, Google Fonts

Library code (React, Supabase JS client) is loaded from jsDelivr with subresource-integrity hashes. Fonts (Fraunces, Outfit) are loaded from Google Fonts. Both providers may receive your IP address when your browser requests these resources, as they do on any site that uses them. Neither provider has any information about you specific to this site.

How to delete your data

If you're signed in:

If you used the tracker without signing in, your items live only in this browser. Clear your browser's site data for this site to remove them.

Children

WillItExpire is intended for adults managing a household pantry. We don't knowingly collect information from anyone under 13.

Changes to this policy

If we change this policy materially, we will update the "last reviewed" date below. If a change affects what data we collect or who we share it with, we will surface the change in the tracker UI for signed-in users.

Questions

A public privacy contact channel is being prepared and will be listed here when available.