Last updated · 23 September 2026
Privacy policy
This policy explains what ovi handles on your phone, in your account, and when you visit this website, and how to contact us.
Who is responsible
Sam Finton, based in Canada, operates the ovi app and ovi.tabslabs.dev and is responsible for personal information received through this website and support. Contact support@tabsandtabs.mozmail.com for privacy questions or requests.
This policy covers the current iOS and Android apps and this website. It does not cover third-party websites or services, which have their own privacy notices.
Information used on your phone
The app uses Bluetooth to discover and communicate with compatible nearby hardware. With your permission, it reads device identifiers, device names, Bluetooth connection information and signal strength. It can read device status, battery information, usage allowances, routine settings and device event history, including usage events and their timestamps. The app also creates a random installation identifier.
Device snapshots, imported history and the installation identifier are stored in the app’s local storage. Routine commands and time information are sent directly to your connected device over Bluetooth. Local diagnostics may include app actions, connection errors and performance information. We do not upload these diagnostic logs. Basic navigation and connection events may be sent to PostHog.
The app does not request access to your contacts, photos, microphone, camera or Apple Health data. It has no advertising or tracking across other companies’ apps. It does not send detailed device history to PostHog. Your operating system may include app data in device backups according to your settings.
On Android 12 and later, ovi requests Nearby devices permission for Bluetooth scanning and connections. On Android 11 and earlier, Android requires location permission for Bluetooth discovery, so ovi requests it for that purpose. The app does not read GPS coordinates, derive your physical location from scan results, or transmit location information to us.
Website visits and browser storage
Cloudflare hosts and protects this website. Delivering a page requires processing technical request information such as your IP address, browser information, requested URL and request time. Cloudflare may also process security and network error information to keep the website available and protect it from abuse. See Cloudflare’s privacy policy.
The product tour stores a display preference in your browser’s session storage for that tab. PostHog uses local browser storage for analytics identifiers and your analytics preference. We do not add advertising cookies. Our hosting provider may use storage or cookies needed for security. The policy and support pages work without JavaScript.
Product analytics
We use PostHog’s US-hosted service to understand visits, prototype signup completion, sign-in, navigation and whether device connections succeed. Events include a random analytics identifier, platform and basic technical information. After you sign in, we use your Clerk user ID to associate activity with the same account across our website and apps. We do not identify you merely because you enter an email on the waitlist.
When analytics is enabled, your prototype signup also saves its random analytics ID. We link that signup’s anonymous activity to your account only after Clerk verifies the same email at sign-in, including when you later sign in on your phone. Other anonymous visits on different devices cannot automatically be connected. We reset the analytics identity when you sign out.
We disable session replay, automatic form/click capture, advertising features and location enrichment. We do not send email or shipping addresses, OTPs, auth tokens, Bluetooth device identifiers, detailed usage history or routine settings to PostHog. PostHog necessarily receives network requests; IP storage and geolocation are disabled in our analytics configuration. See PostHog’s privacy policy.
App analytics is enabled by default on new installations. You can turn off Share analytics under Account at any time, including in guest mode; we preserve your saved choice. You can disable website analytics here for this browser. We also respect Do Not Track and Global Privacy Control where available. Analytics being disabled or blocked does not prevent signup or device use. Contact us to request access or removal of analytics associated with your account.
App setup reminders
App versions with setup reminders register a random installation identifier, the first online registration time, and whether you have chosen a daily limit. Cloudflare stores this state and a hash of an installation credential. PostHog receives the installation identifier, reminder deadline and limit-selection event to manage the reminder. These operational events are separate from optional product analytics and do not include your email, device usage counts or limit value. The identifier stays the same when you sign in or use guest mode. Phone notifications require your device's notification permission. When enabled, PostHog also processes your phone's push token and notification opens to deliver and measure these reminders through Apple or Firebase. You can disable notifications in your phone's Settings.
Support and beta testing
If you email us, we receive your email address and anything you choose to include, such as your name, app version, screenshots or a description of a problem. We use this information to answer you, troubleshoot and maintain the app. Please avoid sending sensitive information or full device history unless it is needed for your request.
If you use TestFlight, Apple may collect crash reports, usage information and feedback under its TestFlight terms and privacy information and make beta testing information available to us. App Store distribution, device backups and Apple’s own services are governed by Apple’s policies. See Apple’s privacy information.
Google Play
If you install through Google Play, Google processes distribution, testing and diagnostic information under its own policies and may provide crash or performance reports to developers. Android backups are controlled by your device and Google account settings. See Google’s privacy policy.
Account settings and usage sync
Our account service can store your chosen daily limit and device usage records under your Clerk account ID in Cloudflare D1. Synced records include the device/log identifiers, record sequence, nicotine or zero-nicotine usage and unsuccessful attempts, and available timestamp information. We use these records to restore your history and display usage totals. Unknown dates are not treated as known dates.
Cloud sync depends on your app version; existing versions that do not support it continue to keep history locally. These records are separate from optional PostHog analytics. We retain synced records while your account is active and remove them, along with your daily limit, when your account is deleted. Contact support to request access or removal.
Why we process information
We use information to provide the app and website, communicate with you, resolve problems and protect our services. Where data protection law requires a legal basis, we rely on providing a service you request, our legitimate interests in operating and securing the website and responding to support, and complying with applicable legal obligations. Where consent is required, you can withdraw it; withdrawing Bluetooth permission stops the app from communicating with your device.
We do not sell personal information or share it for targeted advertising. We do not use it for automated decisions with legal or similarly significant effects.
Sharing, storage and security
Website hosting and email service providers process the information needed to deliver those services. We may disclose information where legally required or necessary to protect people, our services or legal rights. Cloudflare hosts account settings and any usage records you sync; guest-mode history remains on your phone.
Service providers may process information in countries other than yours. Where applicable law requires safeguards for international transfers, we use the protections required by that law. Contact us for information about providers and applicable transfer safeguards.
We retain support correspondence only as long as reasonably needed to resolve the request, follow up on related issues and meet legal obligations. Technical and security records are retained according to operational needs and the hosting provider’s applicable retention settings. We use HTTPS for this website and limit access to information we receive, but no system can guarantee absolute security.
Your choices and rights
- Bluetooth: change ovi’s permission in iOS Settings → Privacy & Security → Bluetooth. Turning it off prevents device communication. On Android, open Settings → Apps → ovi → Permissions and manage Nearby devices (Android 12 and later) or Location (older versions). Labels can vary by phone.
- Local app data: use Delete App in iOS Settings → General → iPhone Storage → ovi to remove the app and its local data. Offloading the app keeps its data. Backups may retain copies or restore data; manage these in your device or backup settings. Deleting the app does not reset settings or history on the physical device. On Android, use Settings → Apps → ovi → Storage → Clear storage, or uninstall the app, to remove its local data. Device backups may retain copies.
- Website preference: clear this site’s browser storage or close the tab to remove its session preference.
- Information sent to us: email support@tabsandtabs.mozmail.com to request access, correction or deletion of information we hold.
Depending on where you live, you may also have rights to restrict or object to processing, receive a portable copy, withdraw consent and complain to your local data protection authority. We may ask for information needed to verify your request. We cannot remotely access or delete information that exists only on your phone or hardware. Delete your account from Account → Manage account in the app, or at ovi.tabslabs.dev/account/. If you cannot sign in, contact support to request deletion after identity verification.
Waitlist
When you join, we store your normalized email address, the shipping address you provide, and signup time in Cloudflare D1 to manage the list, contact you about your prototype, and arrange delivery. We also create or associate your Clerk account, keeping a new email address unverified until you prove ownership during sign-in. Joining does not sign you in.
We send an internal notification containing your email and shipping address to Sam through Cloudflare Email. We retain delivery and account synchronization status so temporary failures can be retried. We use short-lived, keyed hashes of network addresses to limit abuse; we do not store raw IP addresses in the waitlist database.
We retain your entry until you ask to leave, delete the associated account, or the waitlist is no longer needed. To leave or correct an address, contact support@tabsandtabs.mozmail.com. Copies of internal email notifications may remain in our email provider’s backups and retention systems.
Accounts and authentication
If you choose to create an account, Clerk processes your email address, verification codes, authentication sessions and technical information such as IP address and browser or device information to provide and protect sign-in. Clerk uses necessary browser cookies or storage to maintain your website session. We do not store your email verification codes.
We store your Clerk user identifier, verified primary email address, optional profile name and profile update time in Cloudflare D1. We use this information to provide your account and keep its profile consistent between the website and app. Creating an account does not upload Bluetooth device history or associate your local device records with a cloud profile.
Clerk and Cloudflare process information as service providers and may process it outside Canada, including in the United States and other countries where they operate. See Clerk’s privacy policy and Cloudflare’s privacy policy.
We retain your account profile while your account exists. Deletion removes your Clerk account and the email and name in our database. We retain a minimal deletion marker containing only the former Clerk identifier and deletion time to prevent delayed synchronization events from recreating the profile. Provider security records and backups may remain according to their retention processes. Deleting your account does not erase records stored solely on your phone or physical device.
Children
ovi is intended for adults of legal age to use its associated hardware. It is not directed at children, and we do not knowingly collect personal information from children. If you believe a child has provided information to us, contact us so we can address it.
Changes to this policy
We will update this page when our practices change and revise the date above. Material changes will be explained through the app or website where appropriate. New data collection features will be reflected here before they are introduced.