Privacy policy

At a glance

Controller

The controller for this app within the meaning of the GDPR is:

Dominik Graham Pritchett
Galgengraben 2
90574 Roßtal
Germany

Web: pool-buddy.de
E-mail: info@pool-buddy.de

Last updated: August 2026

What data is stored?

Pool Buddy stores the pool and measurement data you enter yourself locally on your device (browser local storage). It is not automatically uploaded. A PoolLab screenshot is only transferred if you deliberately submit a review report as described below.

Pool setup local

  • Pool name (chosen by you)
  • Installation type (above-ground pool, permanently installed pool, hot tub or paddling pool)
  • Brand and model (for above-ground pools)
  • Pool shape and volume (for permanently installed pools)

Water measurements local

  • pH value, free chlorine (FC), total chlorine (TC)
  • Total alkalinity (TA), stabiliser (CYA)
  • Water temperature
  • Date and time of the measurement

App settings local

  • Onboarding status (whether you completed the setup)
  • Reminder settings

No transfer of your pool data

Your pool data is normally not transmitted to any server, not stored in a Pool Buddy cloud and not passed on to third parties. The only exception for PoolLab screenshots is when you deliberately choose “Wrong values? Send for review” in the review screen and explicitly confirm the transfer; details are provided in PoolLab review reports.

Pool data is not uploaded to Pool Buddy servers and is not stored in a Pool Buddy cloud. Bluetooth PoolLab imports are processed locally. With the optional PoolLab screenshot import, the selected image is analysed locally in the browser and is not automatically uploaded to Pool Buddy, Water-i.d. or any image-recognition provider. A transfer to Pool Buddy only occurs if you deliberately submit a review report as described below. Separately from this, the general usage events described below are recorded via Umami on public information pages and in selected app flows. Further transfers only occur for feedback messages you deliberately send via the contact form, a deliberately triggered Premium purchase via Stripe, and the optional weather feature, which transmits coordinates to Open-Meteo only after your explicit consent.

Contact form & feedback

If you send a message via the feedback form in the app, it is transmitted to the operator by e-mail. The following is transmitted: the category of your request, your message and an anonymised IP hash (the last 12 characters of a SHA-256 hash, which cannot be reversed).

For bug reports you may voluntarily provide your e-mail address so that we can reply. This address is used solely to answer your report, is not stored for any other purpose and is deleted once the matter is closed. Providing it is optional — without an e-mail address the report is processed anonymously.

Legal basis: Art. 6 (1) (b) GDPR (performance of a contract) or Art. 6 (1) (f) GDPR (legitimate interest in communication). You can request information, correction or deletion of your data at any time: info@pool-buddy.de

Hosting & server logs

The website and the app are hosted by IONOS SE, Elgendorfer Straße 57, 56410 Montabaur, Germany. A data processing agreement pursuant to Art. 28 GDPR exists between the operator and IONOS.

When the website is accessed, the hosting provider briefly stores technical access data in what are known as server logs: IP address of the requesting device, date and time, URL accessed, referrer, user agent (browser/operating system) and HTTP status code.

This data is technically necessary in order to deliver the website and to fend off attacks. It is not combined with other data sources.

Legal basis: Art. 6 (1) (f) GDPR (legitimate interest in the secure and stable operation of the website). Retention period: a maximum of 14 days, after which IONOS deletes it automatically.

Third-party services

Fonts, icons, CSS, Pool Buddy's own app scripts and the PoolLab screenshot recognition logic are stored locally. Pool Buddy loads the external Umami Analytics script for the general usage events described below. The optional PoolLab screenshot import does not require an OCR API, language model or connection to an image-recognition service; analysis runs entirely on the device. Weather data, feedback and purchases are only transmitted to the named external services following the deliberate actions described in the relevant sections.

No Google Fonts — fully offline capable

The Inter and Plus Jakarta Sans fonts and all icons are stored locally. In the installable app your device does not establish any connection to external servers for them.

No advertising networks, no social media trackers, no Google Analytics, no Firebase, no Sentry.

PoolLab screenshot import — local image recognition

Premium users can voluntarily select a screenshot from the PoolLab app. Pool Buddy processes the image only in the browser using a local recogniser specialised for the PoolLab measurement-list layout. It detects rows, known parameters, numbers and date/time using layout rules and small local reference patterns. Every detected value is shown for review and correction before saving. During normal import, the image is not permanently stored and is not automatically uploaded to Pool Buddy servers. A transfer only takes place if you subsequently choose to submit a voluntary review report.

No external OCR library, language model or cloud service is loaded for this feature. Recognition uses only locally shipped JavaScript and small PoolLab-specific reference patterns.

Voluntary PoolLab review reports by e-mail

If the local screenshot recognition shows incorrect values, you can voluntarily choose “Wrong values? Send for review”. Only after an additional confirmation are the selected screenshot, the automatically detected values and the values currently shown in the review screen transmitted to Pool Buddy and sent by e-mail to info@pool-buddy.de.

  • Purpose: investigating recognition errors and improving the PoolLab screenshot recogniser.
  • Additional technical information: Pool Buddy version, language and report time. No other pool profiles, complete measurement history or device identifier are included.
  • Transmission: the report is received by the IONOS-hosted web server and immediately sent as an e-mail attachment. The PHP endpoint does not create a permanent copy of the image on the web server; technically necessary temporary upload files are used only for the duration of the request.
  • Retention: the review report is deleted after the error analysis is completed and no later than 90 days after receipt.
  • Legal basis: your explicit consent under Art. 6 (1) (a) GDPR. The feature is voluntary and does not affect your use of Pool Buddy. You may withdraw consent for the future at any time by e-mailing info@pool-buddy.de; this does not affect the lawfulness of processing carried out before withdrawal.

Important: pool names or other content visible in the screenshot are transmitted together with the image. Please review the screenshot before sending it and do not submit information you do not want to share with us.

Umami Analytics — information pages & general usage events

Umami is used on the publicly accessible information pages of pool-buddy.de (start page, guides, FAQ and about page, in both German and English) and in selected app flows. Umami is not loaded on the legal pages (imprint, privacy policy, accessibility). Umami sets no cookies and creates no advertising profiles. Page views and general usage events are recorded to assess Pool Buddy's reach, installation and use and to improve the service.

These include app_opened with the opening mode browser or standalone; installation-flow events (install_cta_clicked, install_prompt_shown, install_prompt_accepted, install_prompt_dismissed, install_guide_shown, install_link_copied, browser_test_clicked and app_installed); and onboarding_completed, first_measurement_saved, diagnosis_completed and problem_check_clicked. These events only show that a general step or feature was used.

To prevent duplicate counts and bridge immediate internal page changes, Pool Buddy temporarily keeps unsent event names and the approved coarse properties in sessionStorage. This technical queue contains no pool or measurement data, is limited to 20 events and ends with the browser session.

The event data expressly contains no readings, pool size or pool volume, chemicals or products, postcode, full user agent, diagnosis results or any other pool data. Pool and measurement data remains exclusively on your device.

When the Umami script is requested and an event is sent, the IP address is technically available. Umami uses it together with technical information to derive a daily-changing session hash, but does not store the IP address itself. The browser also sends its user agent when connecting; Umami uses it to derive general information such as browser and operating system. The full user agent is not sent as an event property. Analytics are cookie-free and are not used to create advertising profiles.

Umami is operated by Umami Software, Inc. Further information: umami.is/privacy.

No cookie banner required (§ 25 TDDDG): § 25 TDDDG (formerly TTDSG), Germany's implementation of the ePrivacy Directive, requires consent only for accessing a device (e.g. setting cookies or reading local storage). Umami sets no cookies and does not access your device's storage, so § 25 TDDDG simply does not apply to this statistic — independent of whether personal data is processed.

Legal basis for the processing (GDPR level): Art. 6 (1) (f) GDPR (legitimate interest in statistical evaluation and improvement of the service). The daily-changing session hash prevents tracking across multiple days and no profiles are created for advertising purposes.

Camera features: barcode scan & water colour (optional, beta)

Pool Buddy can optionally use your device's camera to recognise product barcodes (in "Enter water values") and to give a rough estimate of your water colour (in "Diagnosis"). These features are disabled by default and must first be turned on under Settings → Camera & scanner; your browser additionally asks for camera permission separately the first time you scan.

What happens when you use these features?

Legal basis and withdrawal

Legal basis: because camera data is processed exclusively on your device and never enters our area of responsibility, no processing of personal data by us as the operator takes place — a GDPR legal basis under Art. 6 GDPR therefore does not apply here. Activating the feature in the app settings, as well as granting camera permission via your browser/operating system, remain entirely under your control.

Withdrawal: you can disable the feature again at any time under Settings → Camera & scanner. You can additionally withdraw the camera permission itself at any time via your browser's or operating system's site/app permissions.

Weather feature (optional)

Pool Buddy can warn you about heat or heavy rain at your pool location. This feature is disabled by default and is only activated after your explicit consent in the settings.

What happens when the weather feature is enabled?

Legal basis and withdrawal

Legal basis: your consent pursuant to Art. 6 (1) (a) GDPR. Without active consent neither the postcode is processed nor a weather request made.

Withdrawal: you can withdraw your consent at any time under Settings → Weather notices → “Withdraw consent”. The stored postcode, the coordinates and the local weather cache are deleted immediately. The withdrawal does not affect the lawfulness of processing carried out up to that point.

Postcode directory attribution

The local postcode directory is based on data from GeoNames, published under the Creative Commons CC BY 4.0 licence.

Pool Buddy Premium & payment processing via Stripe

Pool Buddy Premium is an optional, paid add-on (7-day forecast, inventory management, annual costs). Payment is handled by the payment service provider Stripe – Pool Buddy never receives payment data, never sees card numbers and stores none.

How the purchase works

Legal basis

Legal basis: Art. 6 (1) (b) GDPR (performance of the purchase contract for the Premium unlock). Using Premium is entirely voluntary — the free core version of Pool Buddy works fully independently of it.

Withdrawal function

Since 19 June 2026 we provide an electronic withdrawal function for purchases of Pool Buddy Premium under German law (§ 356a BGB) (withdraw from contract, see also the withdrawal notice). If you use this function, we process the following data:

What data

Purpose

Processing your withdrawal, evidencing timely receipt, and — for the technical abuse-prevention data — protecting the function against automated duplicate or spam submissions.

Legal basis

Art. 6 (1) (c) GDPR (legal obligation to enable and document withdrawal under §§ 355, 356a BGB) for name, e-mail address, timestamp, and the withdrawal statement itself; Art. 6 (1) (f) GDPR (legitimate interest in abuse prevention) for the IP hash and client token.

Recipients

No data is passed on to third parties. The acknowledgement of receipt and the internal notification are sent exclusively via our existing hosting provider's e-mail delivery. We do not transmit any personal withdrawal data to analytics tools (e.g. Umami) for this function — only anonymous, non-personal count events are recorded there (page view, form started, form submitted).

Retention period

We retain withdrawal statements in accordance with the statutory German commercial and tax retention obligations for business records (§ 257 HGB, § 147 AO) — generally up to 6 years, and up to 10 years for records with the character of accounting vouchers, counted from the end of the relevant calendar year. This period follows the statutory retention obligation and is not an arbitrarily chosen figure.

Your rights (GDPR)

Because all pool data is stored only on your device, you have full control:

Because the actual pool data is stored only on your device, a request for access to us in practice only concerns feedback messages, the Umami statistics, your e-mail address in case of a Premium purchase via Stripe, or — if the weather feature is enabled — the coordinates transmitted to Open-Meteo.

Deleting data

You can remove all stored data in two ways:

Children and young people

Pool Buddy is aimed at pool owners aged 16 and over. Since no personal pool data is collected or transmitted, there are no particular risks in this respect.

Changes to this policy

In the event of significant changes (for example if future versions add optional cloud features) we will update this privacy policy and point this out to you in the app.

You can always find the current version under Settings → Privacy.

Disclaimer

Pool Buddy provides non-binding guide values and general guidance on pool care only. The app does not replace professional advice from a pool expert or chemical manufacturer.

All recommendations, dosage instructions and steps in the app are based on general empirical values and are provided without warranty. Factors such as water quality, pool material, ambient temperature, the products used and individual circumstances can considerably affect the amount of chemicals actually required.

The user bears sole responsibility for the independent use of chemicals and for observing the safety and dosage instructions of the respective manufacturers. Pool Buddy accepts no liability whatsoever for personal injury, property damage or consequential damage arising from the use or non-use of the recommendations contained in the app.

Always observe the safety data sheets and product information for the chemicals used and keep them out of the reach of children.

Contact

If you have questions about data protection you can reach us at:

info@pool-buddy.de

Withdrawal notice · Withdraw from contract

Legal notice · Deutsche Fassung

Back to the start page