Privacy
Privacy Policy
What this app collects, why it collects it, and what you can ask us to delete.
Happ Plus VPN: Speed Test (shown on your Home Screen as Happ Speed) measures your internet connection and explains the results with AI. It belongs to the Happ Plus VPN family of apps, but it is not a VPN: it does not route, filter or inspect your internet traffic. This policy explains what data the app handles, where it goes and the choices you have.
At a glance
- No account, no ads and no tracking across other companies' apps or websites.
- Your test history, AI answers and settings are stored on your device.
- From version 1.0.1, new speed tests exchange test data directly with Selectel's dedicated service.
- AI features send requested measurements and questions to our server, which gets answers from an AI model.
- Welcome screens receive a success indication only when the App Store country is Russia and cellular service is
active. Individual check results stay on your device, as explained below.
Speed tests
From version 1.0.1, a test downloads and uploads generated blocks of test data using Selectel's dedicated measurement service at speedtest.selectel.ru and times small requests to measure ping and jitter. Measurement traffic goes directly to that service, without passing through our website proxy, backend or AI service. Like any website, the measurement provider receives your IP address and the details of these requests. The app does not send an install ID, device key, test history, chat content or hosted-flow launch observations to the measurement service. The app identifies Selectel as the provider; it does not obtain your position, identify a server city or calculate your distance to the server. See Selectel's policy: Privacy policy.
Older versions use speed.cloudflare.com. Existing results retain their original Cloudflare data-centre information and approximate server distance. Updating the app does not rerun or rewrite those results. Those earlier requests were subject to the Cloudflare Privacy Policy.
From iOS, the app reads the type of connection (Wi-Fi, cellular or Ethernet), the cellular generation, such as 5G, and whether Low Data Mode is on. It does not read your Wi-Fi network name, your location or your contacts, and it asks for no permissions.
Data on your device
Each result is saved in the app's storage on your device: date, speeds, ping, jitter, latency under load, connection type, the measurement server, the data used, any name you give the result and its AI reading. Your AI Coach conversation and your settings are stored there too. Historical results may also contain the Cloudflare data centre and its approximate distance. We cannot see this data unless you use the sharing or AI features described here.
You can delete one result or all of them in History, delete all results in Settings → Your data and clear the conversation with New conversation in the AI Coach. Deleting the app removes all of it. A shared result card or an exported CSV file contains your results without an IP address or location, and goes only where you send it.
AI features
The AI Coach explains a result and answers follow-up questions. When you ask for an explanation, the app sends our server that result's measurements (speeds, ping, jitter, latency under load, connection type, cellular generation, server distance, protocol details, test length and how long ago it ran), a summary of your recent results, such as the number of tests and typical speeds, and the app language. When you chat, it also sends the recent messages of the conversation, including what you type. Our server passes this content through the AI gateway to OpenAI, the AI model provider, to write the answer, then returns it to the app. We do not send your IP address, install ID or device key to the AI provider, and our server does not store your measurements, questions or answers.
Please don't type personal information into the chat; it isn't needed to answer questions about your connection.
AI answers can be wrong, and you can report any answer in the app. A report sends the reported text, the reason you choose and an optional note to our server, where it is stored for review.
Device key and server records
The first time the app contacts our server, for example when you use an AI feature or open the AI section of Settings, it creates a random install ID and a device key. The key stays in your device's Keychain, in the Secure Enclave where available, and signs the app's requests so that the AI service can't be abused. Our server stores the install ID with the public half of the key, the app version and the times of registration and last use. It also keeps:
- daily counts of AI requests for each install, to apply the daily allowance shown in Settings;
- AI request diagnostics: request type, outcome, error code and duration, without its content;
- the reports you send;
- short-lived sign-in and replay-protection records, removed after they expire;
- a one-way hash of your network address, used to limit request rates. Entries become eligible for cleanup
after two hours and are removed during later checks for the same rate-limit group; inactive entries can remain longer.
These records are not linked to your name, email address, Apple ID or advertising identifier, and we do not combine them with other data to identify you. Settings → AI shows a short code of your device key so that you can refer to them.
Welcome screens
The introduction shown until you finish it is a web page loaded from our own domain, the same site that serves this policy. Our managed website proxy receives ordinary request information such as your IP address. The introduction URL identifies this app's bundle, language and iOS platform and indicates that this free app has no purchase offer.
Before loading the introduction, the app briefly checks whether the App Store country is Russia and whether cellular service is active. It checks both once for the current app process when the introduction is needed, within the existing startup wait. It does not check which other apps are installed. Only when both conditions are confirmed does it add a success indication to the introduction URL sent to our domain; otherwise it omits that indication. Individual yes/no results, the country code and carrier details are not sent through these checks. The indication does not identify you, prove how you installed the app or establish your intent.
The app keeps the check results in memory for its current process and reuses them if the introduction retries. It does not save them in its settings or send them as analytics or separate reports. It does not add the success indication to measurement, AI, products, legal, support or external-link requests. Introduction progress is retained on your device so that retry or a return from another app can resume the same step. The introduction does not receive your install ID, device key or test results.
Only on your first app launch, when those checks pass, the app may ask whether you want to rate it above the introduction, or above the usable Speed Test screen if you leave an introduction that could not be shown. You can decline or dismiss the invitation without changing the introduction, its progress or feature access. Accepting requests Apple's system rating sheet; Apple decides whether to display it. The app stores on your device that this first-launch opportunity has been consumed, so a later launch or update does not create another invitation.
Sharing
We do not sell your data or share it for advertising. Data leaves your device only as described here: to Selectel for speed tests from version 1.0.1, to Cloudflare in earlier versions, to our server and its AI model provider for AI features, and to the hosting providers that run our server and website. We may disclose information when the law requires it.
Keeping and deleting data
Results, conversations and settings on your device stay until you delete them or the app. On our server, sign-in and replay-protection records are deleted after they expire. Network-address rate-limit entries older than two hours are cleaned up during later checks for the same group and can remain longer if inactive. Install records, usage counts, diagnostic records and reports are kept while the AI service runs. To ask what we hold or to have these records deleted, send a request through the support page and include the device key code from Settings → AI.
Children
The app is not directed to children under 13, and we do not knowingly collect their personal information.
Changes
We will update this page when the app's data practices change.
Contact
Send questions and privacy requests through the support page.