1Controller and scope
This Privacy Policy describes how Entromoonic Ltd processes personal data in connection with the Linkalyst application for iOS and iPadOS.
The controller responsible for that processing is:
In this Policy, "the App" means Linkalyst; "we", "us" and "our" mean Entromoonic Ltd; "you" means the user of the App; and "personal data" has the meaning given to it in Regulation (EU) 2016/679 (the "GDPR") and, where applicable, the equivalent term under other data protection laws.
This Policy applies to the App only. It does not apply to the hosts, servers, networks or websites that you select as measurement targets within the App; traffic directed at those destinations is governed by the policies of the parties operating them.
2Summary
This section is provided for convenience. It does not replace the sections that follow.
- The App does not operate an account system and does not require registration or sign-in. Test reports are not transmitted to us and are not accessible to us.
- Reports, saved targets, tool presets and preferences are stored in the App's own container on your device.
- Personal data is disclosed to parties other than the measurement target you select in four circumstances only: crash reports and usage statistics (enabled by default; a single setting disables them), IP address information (disabled by default), the Internet Speed Test (run only when you start it; by default against a test server we operate on Cloudflare's network, which publishes nothing, or, where you choose M-Lab, against Measurement Lab, which publishes the results together with your public IP address), and advertising (not displayed at all following purchase of the "Linkalyst Plus" item).
- Running a measurement necessarily transmits traffic to the host you specify or, for Popular Services, to the preset services in the group you choose to test, or, for the Internet Speed Test, to our test server on Cloudflare's network or to a server of Measurement Lab (M-Lab). That traffic is received by those hosts. Only the speed test traffic sent to our own test server reaches us, and we do not log it (section 5, item 7).
- Report files that you export or share are not redacted and may contain identifying information.
3Overview of processing
| Processing | Personal data concerned | Purpose | Legal basis (EEA and UK) | Recipient | Default state |
|---|---|---|---|---|---|
| Storage of reports and settings | Target addresses and host names, measurement results, timestamps, device model, OS version, and optionally Wi-Fi identifiers | Provision of the App's core function | Article 6(1)(b) GDPR (performance of a contract) | None; remains on the device | On |
| Measurement traffic | Addresses, host names, URLs and DNS query names that you enter; your public IP address as seen by the destination | Execution of the measurement you request | Article 6(1)(b) GDPR | The destination you select, or the preset services of the Popular Services group you test | Initiated by you |
| Internet Speed Test with the Linkalyst server (the default provider) | Your public IP address, the time of each request, the test traffic, and the App's name and version | Execution of the speed test you request; protection of the test server against abuse | Article 6(1)(b) GDPR; Article 6(1)(f) GDPR for abuse protection | Us, with Cloudflare as our processor (section 5, item 7) | Initiated by you |
| Internet Speed Test with M-Lab | Your public IP address, the time of the test, the test traffic and the measurements derived from it, and the App's name and version | Execution of the speed test you request | Article 6(1)(b) GDPR | Measurement Lab (M-Lab), which publishes the data (section 5, item 7) | Initiated by you, where M-Lab is selected |
| IP address information | IP addresses displayed in results; the public IP address of the requesting connection | Display of country, region, city, network organisation and ASN | Article 6(1)(a) GDPR (consent) | FreeIPAPI | Off |
| Crash, hang and forced-termination reports | Stack trace, device model, OS and App version, and device state at the time | Detection and correction of defects | Article 6(1)(f) GDPR (legitimate interests) | Sentry | On |
| Usage statistics | Four fixed event codes and the SDK's own session events; device model, OS and App version, language, region, time zone, screen and accessibility settings, session and retention counts; a salted hash of the vendor identifier | Measurement of aggregate feature usage | Article 6(1)(f) GDPR (legitimate interests) | TelemetryDeck | On |
| Advertising | Advertising identifier (where permitted), IP address, coarse location derived from it, device and App information, ad interactions | Display and measurement of advertising | Article 6(1)(a) GDPR for personalised advertising; Article 6(1)(f) GDPR for non-personalised advertising | On, unless "Linkalyst Plus" is purchased | |
| In-app purchase | Purchase entitlement status | Verification of the "Linkalyst Plus" entitlement | Article 6(1)(b) GDPR | Apple | Initiated by you |
Our legitimate interests in the processing identified above are the maintenance of the App's stability and the assessment of which features are used. You may object to that processing at any time by means described in section 7.4.
4Data processed on your device
The following data is written to the App's container on your device. It is not transmitted to us, and we have no means of accessing it.
| Category | Contents | Location |
|---|---|---|
| Test reports (JSON, with a paired CSV of latency samples and DNS results) | Target addresses and host names; protocol, ports and parameters; per-packet and aggregate results; event log codes; timestamps; the report name and any note you enter; device model identifier; operating system version; a compact network environment marker (for example status=satisfied;interfaces=wifi;ipv4=1;ipv6=0;lowData=0;expensive=0); the names and types of the active network interfaces and the gateway addresses configured at the start; the battery level, Low Power Mode and thermal state at the start and whenever they change; for website checks, the device's own local address and port for each request, whether the connection was cellular or proxied, the negotiated TLS version and cipher, and the server certificate's subject, issuer, names, fingerprint and validity dates; for route traces with hop look-up enabled, the host names of hops; for an Internet Speed Test, the provider, the M-Lab server or the data centre that answered the test, and its city, the download and upload rates and their course over time, the round-trip time (for the Linkalyst server also the median latency and jitter, and the number (ASN) and name of the network the test ran over), the bytes transferred and, for M-Lab, the public IP address that the M-Lab server observed; and, where "Record Wi-Fi Details" is enabled, the Wi-Fi network name (SSID) and access point identifier (BSSID) | App Documents/Reports, or the App's iCloud Drive container where iCloud sync is enabled (item 3 below) |
| Saved targets, tool presets and report annotations | The values you enter | App container; the latency targets and the resolver-comparison server addresses are also kept in UserDefaults |
| Local device details and optional network grouping (version 1.2.0) | Local IDs; optional network grouping; names, notes, groups and user types; address and service observations with times; optional report filename references | App Documents/DeviceLibrary.json, separate from report iCloud sync |
| Preferences | Setting states, the region chosen in Popular Services, a flag recording that Linkalyst Plus is held, the number of report files exported without Linkalyst Plus (used only to allow the one free export), the date of the first completed test, the number of completed tests and the App version for which an App Store rating was last requested (used only to decide when to request a rating), the Internet Speed Test provider you selected, the start times of M-Lab speed tests within the preceding 24 hours (used only to observe M-Lab's limit of 40 tests a day), the time at which M-Lab last declined to assign a test server because of its request limit (used only to avoid asking M-Lab again for a few minutes), whether you have read the notice shown before the first Internet Speed Test with each provider, and the names of any reports awaiting copy from iCloud | UserDefaults |
| Date the App was first obtained | Used only to determine when advertising begins after the App is first obtained; the earlier of the first launch on this device and the App Store's record of when your Apple Account first obtained the App | Keychain, which survives deletion of the App |
| Temporary share files | Copies generated when the share sheet is opened | App cache folder |
The following matters are relevant to that data:
- 1.Saved reports contain identifying information. IP addresses, host names, the URL tested (from which any username, password, query string and fragment are removed before the report is written), the DNS server, port, transport and response code, and Bonjour service names, hosts, ports and TXT records are retained in the report file. A device scan report also contains, for each address it saw, the names, manufacturers and models reported by the device or recorded by the router and, where the operating system provides it, the hardware (MAC) address; saving such an address to My Devices keeps the same details in local storage.
- 2.The App contains no backup service operated by us and no facility for transmitting reports to us. The only synchronisation of reports is through Apple's iCloud Drive, as described in item 3; it is disabled by default.
- 3.Where you enable "Sync Reports" under Settings → iCloud, report files are moved into the App's iCloud Drive container and are thereafter uploaded to, stored on and downloaded from Apple's iCloud servers, so that every device signed in to the same Apple Account with iCloud Drive enabled holds the same reports. Deleting a report on one such device deletes it on all of them. The transfer is performed by the operating system under Apple's iCloud terms; we do not receive the files and have no access to the container. Stars, tags, saved targets, tool presets and preferences are not synchronised. Where iCloud is unavailable on the device, the setting has no effect and reports are stored on the device. Disabling the setting copies the reports to the device and ends synchronisation; the copies already in iCloud Drive remain there until you delete them, from the App on a synchronising device or from the Files app. Enabling the setting requires Linkalyst Plus. Where the setting is on but Linkalyst Plus is not held on the device, new reports are stored on the device, reports already in the iCloud Drive container remain readable, and no report is moved until Linkalyst Plus is held again.
- 4.Reports stored on the device are kept in the App's Documents folder and are not marked as excluded from backup. Where you have enabled device backup they are included in it, whether that backup is written to iCloud or to a computer; where backup is disabled, or where the App is excluded individually under the iOS iCloud backup settings, they are not. Reports in the iCloud Drive container are not part of device backup and are held as described in item 3. Reports in either location are accessible to you through the Files app. Backup storage and iCloud Drive are provided by Apple under Apple's terms, and we have no access to either.
- 5.Individual reports may be deleted, and temporary share files cleared, under Settings → Manage. Deleting the App removes all data listed in this section from your device, except the date the App was first obtained, which remains in the keychain; reports in iCloud Drive are not removed by deleting the App.
- 6.Some of this data is visible on your device to anyone who can see its screen. While a measurement runs, the Live Activity shows in the Dynamic Island and on the Lock Screen the tool, the record name, the elapsed time and progress, the current and typical latency, the number of timeouts, a curve of recent latencies, the target host or endpoint and, during a route trace, the address of the current hop; on iOS 26 the system's own background progress display shows the same title and figures. During an Internet Speed Test the Live Activity shows the stage of the test, the current and completed rates, and the provider and city of the server. The background reminder and "stopped" notifications show the record name; the "finished" notification shows the record name with a summary of the result. The App writes to the clipboard when you copy an address or a calculation result; it never reads the clipboard.
- 7.Certain values are deliberately not retained. The username, password, query string and fragment of a tested URL are removed before a report is written. The access code used by the self-hosted UDP echo peer is held in memory only and is never written to a report. IP address lookups are sent through an ephemeral session that retains no cache or cookies between launches.
- 8.Some values are displayed without being kept. The This Device page reads the device model, system version, battery level and charging state, Low Power Mode, thermal state, storage capacity, memory size, processor count, network interfaces and their addresses, the cellular radio technology and the DNS servers in the system configuration, in order to show them on screen; it does not store them, write them to a report or transmit them. Popular Services results are held in memory only, are not written to a report and are cleared when you leave the page.
In version 1.2.0, saved device details and optional network groups stay in local storage when report iCloud sync is enabled. They are not excluded from system backups. You can save a device without choosing a network and organize it later. Network grouping does not identify the currently connected network and does not require recording a Wi-Fi name or location. Deleting device details does not delete their measurement reports. Port scan reports retain the entered range and source, planned candidates and ports, actual attempts, timestamps, end reason, partial results and unattempted entries. New scans do not include network-group metadata; source-network metadata already stored in older reports remains. These reports follow the existing report-sync setting, so a network name retained in an older report can be synced with that report. Targets, network and device names, notes and observations are not sent to Sentry or TelemetryDeck.
5Network connections you initiate
The App is a network measurement tool and transmits traffic when a measurement is run. In each case except Popular Services (item 6), the Internet Speed Test (item 7) and the device scan (item 9), the destination is one that you specify:
- 1.Latency, TCP, throughput and route measurements connect to the address, host name or test endpoint that you enter.
- 2.DNS queries use system DNS or a resolver you explicitly select. UDP/TCP send the query in clear text; DoH (HTTPS) and DoT (TLS) encrypt transport and verify server identity. Each comparison entry uses its selected protocol and endpoint, with system DNS plus at most four specified servers. Provider selection only fills a draft; you start manually. The selected resolvers still receive your domain name and connection IP. Endpoint hostnames may first be resolved using system DNS. There is no automatic redirect, provider switch or plaintext fallback, and no change to device DNS settings. Only credential-free custom endpoints are supported. Reports and saved configurations retain actual endpoints and protocols. Only reports retain available DNS/HTTP status and timing; saved configurations contain inputs, not results. Reports follow your existing optional iCloud report-sync setting. Where "Look up hop hostnames" is enabled for a route trace, the address of each hop is submitted to the system resolver for a reverse look-up.
- 3.HTTP and HTTPS download measurements request the URL you enter, applying the operating system's standard TLS validation. The response body is measured and is not retained.
- 4.Bonjour queries local network services of the types you select following your instruction to discover them, and resolves an individual service only following your instruction to resolve it. It does not scan ports, connect to discovered services, or open web pages.
- 5.Port Check — Batch Scan (version 1.2.0) starts only on your instruction, with up to 256 numeric candidates from an address list or IPv4 CIDR. Four port presets and an editable list support TCP ports from 1 to 65535, including ranges; the default is 80/443. Each scan is limited to 4,096 address-port combinations, with at most eight simultaneous connection attempts and a one-second timeout each. It sends no application data and does not identify services. IPv6 uses known addresses only, preserving interface scope, without enumerating a subnet. This workflow does not automatically send candidates to an IP-information service. Bonjour can observe several selected service groups separately; publishing a service does not establish that it is currently reachable.
- 6.Popular Services (version 2.0.0) connects, only when you start a test of a group, to the services in that group, taken from a fixed list in the App (for example
www.youtube.comorwww.baidu.com). For each service it resolves the domain with system DNS and opens three TCP connections to port 443, sending no application data. Those services therefore receive your public IP address and the connection attempts. The list cannot be edited, and the region you choose only changes which services are listed first. - 7.Internet Speed Test (version 2.0.0) runs only when you start it, against the provider selected under Settings → Internet Speed Test → Provider. The App runs no scheduled or automatic speed tests. A notice describing the selected provider is shown before your first test with it, and a summary is repeated below each result.
- Linkalyst server (the default). The test runs against a test server that we operate; Cloudflare, Inc. hosts it on its network. The App sends a series of encrypted HTTPS requests to our test server, which answers from the data centre nearest to you: about twenty small requests to measure latency, then downloads and uploads over several connections at once for up to about ten seconds per direction, during which further small requests measure latency under load. The server receives your public IP address, the time of each request, the test traffic, the name and version of the App (
linkalyst-iosand its version number) and a fixed marker identifying the App. Cloudflare uses your IP address to route each request to the nearest data centre and, under security rules we have set for the server, to limit the number of requests from one address. We do not log test requests and do not store your IP address; the server returns only the code and city of the data centre and the number (ASN) and name of the network your connection comes from, which Cloudflare determines from your IP address; the App writes them to the report on your device. Where a request is blocked under those security rules, Cloudflare records it, including the IP address, in the security event log of our account for the limited period that Cloudflare applies to that log. No data from the test is published. The data centre may be in another country; from mainland China, it is generally outside mainland China. - M-Lab. The App first asks the Locate service of Measurement Lab (M-Lab) for a nearby test server, then measures download and upload over one encrypted WebSocket connection each, for about ten seconds per direction. M-Lab receives your public IP address, the time of the test, the test traffic and the measurements derived from it, and the name and version of the App; the App sends M-Lab no other data. M-Lab publishes the data of every test, including your public IP address and the time of the test, as an open dataset under the CC0 public domain dedication; once published, the data cannot be withdrawn by us. The notice shown before your first M-Lab test links to M-Lab's privacy policy, and the statement is repeated below each result and in Settings. The server is chosen by M-Lab and may be in another country; from mainland China, the server is generally outside mainland China. The App starts at most 40 M-Lab tests in any 24 hours, counted on your device. The public IP address that the M-Lab server observed is also written to the report on your device. M-Lab's privacy policy: https://www.measurementlab.net/privacy/
- Linkalyst server (the default). The test runs against a test server that we operate; Cloudflare, Inc. hosts it on its network. The App sends a series of encrypted HTTPS requests to our test server, which answers from the data centre nearest to you: about twenty small requests to measure latency, then downloads and uploads over several connections at once for up to about ten seconds per direction, during which further small requests measure latency under load. The server receives your public IP address, the time of each request, the test traffic, the name and version of the App (
- 8.CIDR calculation and report comparison operate offline and generate no network traffic.
- 9.Device Scan (version 2.2.0) runs only when you start it on the Discover page, and only on the Wi-Fi or Ethernet network the device is connected to, within the subnet given by the interface's own mask and at most 256 addresses. It sends ICMP echo requests and TCP connection attempts to those addresses, asks the addresses that respond for their names through reverse DNS (including multicast DNS on the local network), NetBIOS name queries and UPnP device descriptions, and looks for Bonjour services of the selected types and of types whose records name a device or its model, such as AirPlay, Google Cast and HomeKit. Where iOS permits it, the scan also sends one standard UPnP (SSDP) multicast search and one NetBIOS broadcast name query to the local network, so that devices answering them are listed. It does not sign in to, configure or change any device. The results stay on your device; they are not sent to us or to any third party, and manufacturer names derived from hardware addresses are looked up offline in a list included in the App.
Each destination receives the information that a network request ordinarily discloses to it, including your public IP address. Apart from speed tests with the Linkalyst server, which reach our own test server as described in item 7, that traffic is not received, intercepted or logged by us.
Where iCloud sync is enabled, the operating system additionally transfers report files to and from Apple's iCloud servers, as described in section 4. That transfer is not a measurement and is not tied to any test.
The App ships with sample targets, which are shown as examples and are not contacted unless you enable one and start a measurement. One of them is the public resolver at 1.1.1.1, operated by Cloudflare. The resolver comparison is pre-filled with 1.1.1.1 and with 8.8.8.8, operated by Google; the DNS look-up and the website check are pre-filled with www.apple.com, and the DNS records tool with example.com. You may edit or delete any of them. The services listed in Popular Services are not editable and are contacted only when you test their group.
6IP address information
Where you enable Settings → Privacy → "IP Lookup", the App transmits IP addresses to FreeIPAPI in order to obtain the country, region, city, network organisation and ASN displayed alongside a result. The setting is disabled by default, and no such transmission occurs until you enable it.
The following limitations apply:
- 1.Only numeric, globally routable addresses are transmitted. Private, loopback, link-local and other non-public addresses are not transmitted under any circumstances.
- 2.Where your own public egress address is queried, FreeIPAPI additionally receives the public IP address of the connection making the request.
- 3.Results are held in memory for up to 24 hours while the App runs and are not kept between launches; a snapshot is written into any report that displays them.
- 4.Queries are suspended for the duration of a measurement and while the App is in the background.
- 5.Disabling the setting ends all such queries. Snapshots already written into reports remain in those reports.
The lookup results are reference information about the address, not a statement about your location. The region shown is the IP database's reference attribution rather than the precise location of a device or server, and the network organisation is the owner of the ASN, which may differ from the access provider.
FreeIPAPI is operated by an independent third party: https://freeipapi.com/
The results incorporate data from DB-IP (https://db-ip.com/), made available under the Creative Commons Attribution 4.0 International licence (https://creativecommons.org/licenses/by/4.0/). The same attribution appears in the App under About Linkalyst → Data Sources and in the detail view of any report containing a lookup result.
7Crash reports and usage statistics
The setting at Settings → Privacy → "Share Analytics" governs both forms of processing described in this section. It is enabled by default. Where it is disabled, both software development kits are shut down and cease transmitting. Usage events already queued on the device at that moment are not transmitted while the setting remains disabled; they are transmitted if the setting is later re-enabled.
7.1 Crash reports
Where the App crashes, stops responding for several seconds, or is terminated by the operating system's watchdog, a diagnostic report is transmitted to Sentry. That report consists of the stack trace, the device model, the operating system version, the App version and build number, and the device state recorded at the time, such as free memory and storage, orientation, locale and time zone.
The App's configuration of Sentry excludes the collection of user identifiers, personally identifiable information, screenshots, view hierarchies, session recordings, records of preceding in-app events, session tracking, performance and user-interface tracing, and any interception of the App's own network requests. The service is further configured so that it does not derive the IP address of the transmitting device. Accordingly, no measurement target, address, result, report content or Wi-Fi identifier forms part of a crash report.
Crash reports are transmitted to and stored in Sentry's European Union data region.
7.2 Usage statistics
The App itself transmits four event codes to TelemetryDeck, and no others:
| Event | Parameters |
|---|---|
Test.ended | The tool used, and whether the measurement completed or was stopped |
Report.shareOpened | The number of files prepared by the share sheet; this does not indicate that a file was shared |
Purchase.removeAds | None |
Purchase.restored | None |
These events do not carry measurement targets, addresses, URLs, results, report contents, Wi-Fi information, or any value entered by you.
The TelemetryDeck software development kit additionally transmits two events of its own: a session-start event at each launch and at each return to the foreground after five minutes, and a new-install event on first run carrying the date of that first session. It attaches its standard parameters to every event: the device model, CPU architecture, screen resolution, screen scale and orientation; the operating system and App version, and the name and version of the software development kit; the language, locale, region and time zone; the date, day of the week and hour at which the event is generated; the colour scheme, layout direction and accessibility settings; whether the build is a debug, simulator, TestFlight or App Store build; and session and retention counts, being the first session date, the number of sessions, the days used in total and in the preceding month, and the average and previous session length. Each event also carries a session identifier generated at random for each session. It distinguishes devices by means of the Apple vendor identifier (IDFV) hashed with SHA-256 and a salt contained in the App. That identifier is pseudonymous rather than anonymous: it cannot be reversed by us to identify you, but it permits statistics to be grouped by device.
7.3 Suspension during measurements
Usage events generated while a measurement is in progress are retained locally, to a maximum of 50, and transmitted after the measurement ends; Sentry's application-hang detection is suspended for the same period. Both software development kits transmit through a gate that cancels requests before they commence while a measurement is running or while the setting is disabled. Data not transmitted is retried subsequently.
7.4 Withdrawal and objection
Disabling the setting referred to above takes effect immediately and constitutes both a withdrawal of consent, where consent is the applicable basis, and an objection to processing carried out on the basis of our legitimate interests.
Provider policies: Sentry, https://sentry.io/privacy/ ; TelemetryDeck, https://telemetrydeck.com/privacy/
8Advertising
The App is supplied free of charge and displays a single banner advertisement at the foot of its three principal pages. Advertising is supplied by Google AdMob.
8.1 Conditions of display
- 1.No advertising is displayed following purchase of the "Linkalyst Plus" item, and the advertising software development kit is not initialised.
- 2.No advertising is displayed while a measurement is in progress. The banner is removed from the interface for the duration of the measurement, and no advertisement is requested or refreshed during that period.
8.2 Consent
On activation, from the first use of the App, the App requests your consent status through Google's User Messaging Platform, so that your choices are recorded before advertising begins. Where the applicable law of your region so requires, including in the European Economic Area and the United Kingdom, a consent form is presented before any advertisement is requested. Where your region requires that the choice remain alterable, the option Settings → Privacy → "Ad Privacy Choices" reopens that form. It is not shown after "Linkalyst Plus" is purchased, since no consent is requested and no advertisement is shown in that state.
8.3 App Tracking Transparency
Where consent permits advertisements to be requested and you have not yet responded to the App Tracking Transparency prompt, that prompt is presented before the advertising software development kit is initialised, so that the first advertising request reflects your response. Permission granted allows Google to use the advertising identifier (IDFA) for the personalisation of advertising. Permission refused does not prevent the display of advertising; advertising is then non-personalised. Your response may be changed at any time under iOS Settings → Privacy & Security → Tracking.
8.4 Google's role
In respect of data collected through the advertising software development kit, Google acts as an independent controller. That data may include the advertising identifier, the IP address, coarse location derived from the IP address, device and application information, and interactions with advertisements. The App additionally includes Apple's SKAdNetwork identifiers, which permit Apple to report campaign performance to advertisers without identifying you.
Google's practices are described at https://business.safety.google/privacy/ and https://policies.google.com/technologies/partner-sites
9In-app purchases
"Linkalyst Plus" is a one-time, non-consumable purchase administered by Apple through StoreKit and the App Store, with Family Sharing support. Apple processes the payment. We do not receive your payment method, card details or Apple Account credentials.
The App verifies the entitlement with Apple, records a flag on the device indicating that Linkalyst Plus is held, which removes advertising and unlocks the functions described in section 8 of the Terms of Service, and transmits only the aggregate purchase events identified in section 7.2. Refunds, receipts and billing are administered by Apple: https://support.apple.com/billing
10Device permissions
| Permission | Purpose | Limitations |
|---|---|---|
| Local Network | Connecting to targets on your network, reading the gateway, and discovering Bonjour services of the types you select | No broadcast scanning is performed and no connection is made to a discovered device without your instruction |
| Location (While Using the App, Precise) | Obtaining the Wi-Fi network name (SSID) and access point identifier (BSSID), which iOS discloses only where this permission is granted, for the purpose of diagnosing roaming. Requested only when you select "Read Wi-Fi Name" | Your latitude and longitude are not requested, read or stored. Location data is not used for any other purpose |
| Notifications | Reminding you to return to the App before the system background time limit expires, and notifying you when a measurement completes or stops in the background. Requested when a measurement first starts, where the corresponding option is enabled | No marketing or promotional notifications are sent |
| Tracking | Personalisation of advertising, as described in section 8.3 | Refusal does not restrict any function of the App |
The Wi-Fi network name and access point identifier are written to reports only where Settings → Privacy → "Record Wi-Fi Details" is enabled.
11Export and sharing of reports
From the Records page or a report's detail view, the full report in JSON form or a CSV of latency samples and DNS results may be shared. Without Linkalyst Plus one report may be exported in this way; the App counts completed exports on the device (section 4), a cancelled share is not counted, and nothing about the export is transmitted to us.
Shared files are not redacted. They retain the entire contents of the saved report, which may include IP addresses, host names, URLs, the service names, host names and TXT records of devices discovered on your local network — which may identify equipment belonging to other people — and, where the corresponding setting is enabled, Wi-Fi identifiers. A notice to that effect is displayed before sharing; the original report is not altered; and no file is transmitted automatically. The destination and the recipients of such files are determined by you, and any disclosure that results is outside our control.
A completed Internet Speed Test, a finished Latency Test or a finished Popular Services group may also be shared as an image generated on your device. The image shows only the measured speeds, connection times or round-trip times, the test server and its city for a speed test (and, where the test ran over Starlink, a note saying so, which you can leave off), the targets of a latency test (public addresses or the domain names you entered; private network addresses appear only as "Local device"), the time of the test and the App's name; it contains neither the IP addresses of your device and connection, nor Wi-Fi identifiers or other report contents. The text offered with the image contains a link to the App's page on the App Store. Nothing is transmitted unless you choose a destination in the system share sheet.
12Recipients of personal data
| Recipient | Data received | Role |
|---|---|---|
| Sentry (Functional Software, Inc.) | Crash reports | Processor acting on our instructions |
| TelemetryDeck | Usage events and standard SDK parameters | Processor acting on our instructions |
| Google (Google Ireland Limited / Google LLC) | Advertising data, as set out in section 8.4 | Independent controller |
| FreeIPAPI | IP addresses, where section 6 is enabled | Independent controller |
| Cloudflare, Inc. | Your public IP address, the time of each request and the test traffic of Internet Speed Tests run with the Linkalyst server; requests blocked under our security rules, in the security event log (section 5, item 7) | Processor acting on our instructions |
| Measurement Lab (M-Lab) | Your public IP address, the time and the measurements of each Internet Speed Test you run with M-Lab, which M-Lab publishes (section 5, item 7) | Independent controller |
| Apple Inc. | Purchase and entitlement data; SKAdNetwork attribution; report files, where iCloud sync is enabled (section 4) | Independent controller |
We do not disclose personal data to any other recipient, except where disclosure is required by law or is necessary to establish, exercise or defend legal claims.
13International transfers
We are established in the United States. The recipients identified in section 12 operate in the United States and in the European Union. Our Sentry organisation is configured to use Sentry's European Union data region. Cloudflare operates data centres in many countries; a speed test with the Linkalyst server is answered by our test server in the data centre nearest to you, which may be located outside your country. Measurement Lab operates test servers in many countries; the server used for an M-Lab speed test is chosen by M-Lab and may be located outside your country, and the data M-Lab publishes is available worldwide.
Where personal data is transferred outside the European Economic Area or the United Kingdom, those transfers are made subject to the safeguards described in the recipients' own policies, including the standard contractual clauses adopted by the European Commission.
Where iCloud sync is enabled, report files are stored by Apple in iCloud Drive at locations Apple determines. For Apple Accounts whose country or region is mainland China, iCloud is operated by AIPO Cloud (Guizhou) Technology Co., Ltd. under Apple's iCloud terms.
14Retention periods
| Data | Retention period |
|---|---|
| Reports and settings on your device | Until deleted by you, or until the App is deleted |
| Local device details and network groups (version 1.2.0) | Device details can be deleted in My Devices without deleting reports. Network groups remain until the App is deleted. Deleting the App removes these local copies; system backups are managed separately in your device or backup settings |
| Reports in iCloud Drive | Until deleted by you from a synchronising device or from the Files app; neither turning sync off nor deleting the App removes them |
| IP address lookup cache | Up to 24 hours, in memory, and no longer than the App runs. Snapshots written into a report are retained for the life of that report |
| Start times of M-Lab speed tests | 24 hours, on the device |
| Speed test requests to our test server (Linkalyst server) | Not logged by us. Requests blocked under our security rules are kept in Cloudflare's security event log for the limited period that Cloudflare applies to that log |
| Internet Speed Test data received by M-Lab | Retained and published by M-Lab under its own policy as a permanent open archive; we cannot delete it |
| Date the App was first obtained | In the keychain until the device is erased; not removed by deleting the App |
| Crash reports | The retention period applicable to our Sentry plan, currently 30 days |
| Usage events | The retention period applied by TelemetryDeck to aggregate usage signals |
| Advertising and purchase data | Retained by Google and by Apple under their respective policies |
15Your rights
Subject to the law applicable to you, you may have the right to obtain access to your personal data, to have it rectified or erased, to obtain restriction of processing, to object to processing, to data portability, and to lodge a complaint with a supervisory authority.
Because the majority of the data described in this Policy is not transmitted from your device, those rights are exercised directly: reports may be deleted under Settings → Manage, and deleting the App removes all such data. In respect of data that is transmitted, consent may be withdrawn, and processing objected to, by means of the settings identified in sections 6, 7 and 8, and through the iOS system settings identified in sections 8.3 and 10.
Data published by M-Lab from an Internet Speed Test is not held by us; requests concerning it should be addressed to M-Lab.
Crash reports and usage events are pseudonymous and carry no identifier by which we are able to associate them with an identified person. We are therefore ordinarily unable to locate the records of a particular individual in order to respond to a request for access or erasure. Where you provide us with information sufficient to do so, we will act on the request to the extent reasonably possible.
Requests may be addressed to contact@entromoonic.com.
16Additional disclosures for residents of the United States
We do not sell personal information in exchange for monetary consideration.
Personalised advertising may constitute "sharing" for the purposes of cross-context behavioural advertising under the California Consumer Privacy Act as amended, or "targeted advertising" under comparable laws of other states. You may opt out by refusing the App Tracking Transparency prompt, by disabling "Allow Apps to Request to Track" under iOS Settings → Privacy & Security → Tracking, and, where your region makes it available, through Settings → Privacy → "Ad Privacy Choices".
Residents of certain states have the right to know, to delete, to correct, to opt out, and to limit the use of sensitive personal information, and the right not to be discriminated against for exercising those rights. The extent to which those rights can be exercised against us is limited by the following facts: the App operates no account system; we do not collect names, email addresses, telephone numbers or ages; and we construct no user profile. The crash reports and usage events we receive are pseudonymous, as described in section 7, and carry no identifier by which we are able to associate them with an identified person. Accordingly:
- 1.The right to know can be exercised. This Policy states the categories of personal information collected, their sources, the purposes of collection and the recipients. An individual response may be requested at the address below.
- 2.The right to delete is limited in effect. Applicable law requires us to verify the identity of a requester before giving effect to a deletion request, and we hold no identifier against which such verification can be performed. We are not required to reidentify or link information that we do not maintain in an identifiable form in the ordinary course of business. Where we are unable to verify a requester's identity, we will decline the deletion request and inform the requester of the reason. In respect of data stored on your device, deletion is performed by you, as described in section 4, and is complete.
- 3.The right to correct ordinarily has no subject matter in the App. We maintain no account record or user profile, and therefore hold no record of personal information capable of correction.
- 4.The right to opt out can be exercised in full, and without recourse to us, by the means described in the second paragraph of this section.
In respect of data held by Google, Apple, FreeIPAPI or Measurement Lab as independent controllers, requests should be addressed to those parties; see section 12.
Requests may be addressed to contact@entromoonic.com.
17Children
The App is a technical tool directed at a general audience. It is not directed at children, is not distributed in the App Store Kids Category, operates no account system, and does not collect names, email addresses, telephone numbers or ages. We do not knowingly collect personal data from children under the age of 13, or under the age of 16 where local law establishes that age.
The following limitation of the App's design should be noted. The data we receive, being crash reports and usage events, is pseudonymous and contains no identifier by which any individual can be identified. We are therefore unable to isolate records belonging to a particular child, whether or not we are notified that such records exist.
A parent or guardian may remove the data concerned, and bring the processing to an end, by the following means, which are complete remedies within the architecture of the App:
- 1.Test reports are stored on the device and are never transmitted to us. Deleting reports under Settings → Manage, or deleting the App, removes that data entirely.
- 2.Disabling Settings → Privacy → "Share Analytics" ends all further transmission to Sentry and TelemetryDeck.
- 3.Purchase records held by Apple and advertising data held by Google are subject to requests made to those parties respectively. The advertising identifier may be reset in the iOS system settings.
If you believe that a child has provided us with personal data, please contact us at the address in section 1. Where you provide information sufficient to locate a particular record, we will delete it so far as is technically possible and, where necessary, bring further collection to an end.
18Changes to this Policy
This Policy will be amended where the App's processing of personal data changes. The version number and effective date stated at the head of this Policy identify the current text. Material changes will be notified within the App or in the App Store release notes before they take effect.