Legal

Privacy Policy

How Kegel.Today handles local workout data, optional daily reminders, analytics, and contact information.

Kegel.Today provides educational information only and is not a substitute for professional medical advice. Stop if you feel pain or symptoms worsen.

Kegel.Today is designed as a privacy-first static PWA.

Local workout data

Workout sessions, settings, selected workout mode, and streak calculations are stored in your browser using LocalStorage. This data is not sent to a Kegel.Today backend.

Kegel.Today does not provide accounts or remote backup. LocalStorage data can be deleted by your browser, by browser privacy tools, or by you when clearing site data.

Daily reminders

Daily reminders are optional. If you turn them on and allow notifications, Kegel.Today stores the minimum technical data needed to schedule and deliver them: the browser-provided push endpoint and encryption keys, language, IANA timezone, selected local reminder time, delivery state, bounded failure information, timestamps, and a hashed management credential. Workout sessions, progress, streaks, symptoms, diagnoses, and other health information are not included.

The plaintext management credential and its paired endpoint are stored only in LocalStorage on your device so the site can update or delete your server record. Kegel.Today stores only a SHA-256 hash of that credential on the server.

Cloudflare processes the server-side subscription data and connection metadata needed to operate and secure the service for Kegel.Today. Kegel.Today application code does not write IP addresses or user-agent strings to the reminder database or reminder logs. Delivery also uses the push service selected by your browser or operating system. That push service receives the subscription routing request and an encrypted notification payload; the approved notification text is encrypted before it leaves Kegel.Today's Worker.

Each reminder subscription remains in the active database for no more than 180 days after it is created or last confirmed by the same authenticated browser client. Kegel.Today renews this period when the site opens with the saved management credential, notification permission, and the matching browser PushSubscription still available. A successful response from a push service does not renew the period because it does not prove that the browser can still manage the subscription.

If the site is not able to confirm the subscription within 180 days, reminder delivery stops and the active-database record is automatically deleted. Clearing site data removes the browser's management credential and prevents further confirmation, so an older server record can remain only until the end of its existing 180-day period. Turning Daily reminder off still deletes the server record immediately when the service is reachable and unsubscribes the browser. A temporarily unavailable deletion is retried from the device. A record is also deleted earlier when the push service reports that its endpoint has permanently expired or after ten consecutive delivery failures.

After deletion from the active database, Cloudflare D1 Time Travel may retain a recoverable database version for up to 30 days as part of managed disaster recovery. Kegel.Today does not create longer-lived reminder backups.

Reminder delivery is best-effort and may be delayed or suppressed by the browser, push service, operating system, or device settings. You can withdraw from this optional processing at any time by turning off Daily reminder in Settings. Using the toggle before clearing site data is the reliable way to request immediate deletion from the active server database.

Analytics

Kegel.Today uses Google Analytics 4 to understand aggregate usage such as page views, timer events, device type, approximate location, and general interaction patterns. Google Analytics may store first-party cookies such as _ga in your browser.

Workout history, selected setting values, contact-form content, diagnoses, symptoms, and other sensitive health information are not sent to GA4. Daily reminder analytics are limited to coarse setup, permission, success or failure, disable, and pending-cleanup states. The selected reminder time, timezone, push endpoint, encryption keys, notification text, and reminder-subscription identifier are not sent to GA4. You can remove Analytics cookies by clearing cookies and site data in your browser or use Google's opt-out tool.

Google describes how it handles Analytics data in Google's Privacy Policy and provides a Google Analytics opt-out browser add-on.

Contact information

When you contact Kegel.Today, the information you provide is used only to respond to your message, improve the service, or handle security and abuse issues.

Sensitive information

Kegel.Today does not ask for diagnoses, symptoms, pregnancy status, sexual health details, or other sensitive medical information.

Privacy questions

For privacy questions, contact [email protected]. Because Kegel.Today has no accounts and does not store an email address with a reminder subscription, the Daily reminder toggle and its device-held management credential are the normal way to identify and delete that subscription safely.

Last updated: July 16, 2026