Privacy Policy for Tonntag
1. Controller and scope
This policy applies to the Tonntag app for iOS and Android, the website tonntag.de with our interface api.tonntag.de, and these Tonntag legal pages on punktdev.com. The controller is Real Movement Analytics GmbH, Kleines Everstal 18d, 44388 Dortmund, Germany (legal notice). Contact: tonntag@punktdev.com. We have not appointed a data protection officer because there is no legal obligation to do so.
Tonntag works without an account. The app and website contain no ads, set no cookies and use no third-party analytics, tracking or crash reporting services. Our server stores no accounts, IP addresses or device identifiers, and no names unless you write them to us in a problem report (section 4). We do not create usage profiles and make no automated decisions within the meaning of Art. 22 GDPR.
The legal pages on punktdev.com are also delivered via Cloudflare (section 2). There the page reads any light/dark preference (pdev-theme) stored in your browser's local storage so that your chosen appearance is kept (Section 25(2) No. 2 TDDDG). Nothing is transmitted to us.
2. Hosting, server and logs
We run the website, the interface and the database on Cloudflare, Inc., 101 Townsend Street, San Francisco, CA 94107, USA (Cloudflare Workers and D1). With every request, Cloudflare processes your IP address and technical request data such as time, requested address, browser or app information and response status in order to deliver the content and protect the service against disruption and abuse. The legal basis is Art. 6(1)(f) GDPR; our legitimate interest is secure and reliable operation. Cloudflare also processes technical operating data under its privacy policy.
For the interface api.tonntag.de we have enabled Cloudflare logging (Workers Logs), but only for entries our server writes itself. We have switched off the automatic invocation logs, which would contain the full address of every request. Our entries contain the request method, the path without query parameters, the status code and the duration of the request. In the path we replace the district ID (section 4) with a placeholder, and paths that do not belong to any function of the interface are only logged as a placeholder. In addition there are operating and error messages naming the waste provider and the type of error. We do not write the text of unexpected errors into the log, only a fixed error code, for example for a network or database error, or the HTTP status. We do not write IP addresses or search texts into these logs. Under our plan, Cloudflare keeps them for up to 7 days. We have not enabled access logging for the website tonntag.de.
When we update the dates from the waste providers, we store a technical import log in our database and in Cloudflare Workflows. Error messages in it may contain identifiers of individual collection points and address components, but no link to people who use Tonntag. We use it for troubleshooting (Art. 6(1)(f) GDPR). An hourly job deletes the entries in our database after 30 days.
3. Address search and collection dates
When you enter an address on the website or in the app, your browser or the app sends the text you typed to our interface. We suggest matching places, streets and house numbers and show you the dates for the address you choose; on the website this is a preview of the next dates. We process the search text only for the request and do not store it. Answers to address requests may only be cached on your device, not in a shared cache. The legal basis is Art. 6(1)(b) GDPR, because you want to retrieve the dates, and otherwise Art. 6(1)(f) GDPR (legitimate interest in operating this feature).
If you type a street without a complete place name, the search shows streets near you first. For this we use the city and state that Cloudflare roughly derives from your IP address and passes to us with the request. We use this only to order the suggestions and do not store it. The legal basis is Art. 6(1)(f) GDPR; our legitimate interest is relevant suggestions.
Some waste providers keep separate dates for individual houses. If we do not yet know the calendar for such a house number, our server requests it from the provider's online service with the municipality, street and house number. Our server makes this request, not your device; we do not pass on your IP address or any other information about you. If the provider finds the address, we store it (municipality, district of the town where applicable, street and house number) with its district ID and the dates in our collection directory. The provider then does not have to be asked again for every request, and we update the dates from the provider regularly. The entry contains nothing that links it to you, an account or a device, and it is also used for later requests by other people for this address. It remains as long as we offer dates from this provider. If we remove a provider from Tonntag, its entries in the collection directory are deleted automatically, usually within two days. They then remain technically in the database's restore history for up to 30 days (section 5). So that we do not ask the provider again in vain, our server also briefly keeps in memory which addresses the provider did not find (up to 24 hours) and for which the request failed (up to 10 minutes). The legal basis is Art. 6(1)(b) GDPR for your request and Art. 6(1)(f) GDPR for the storage; our legitimate interest is a fast service that spares the providers' servers.
4. The Tonntag app
On your device the app stores your addresses, the related district ID, the collection dates, dates you entered yourself, your reminders and your settings. The widgets on the home and lock screen read this data directly on the device. This storage is necessary for the app (Section 25(2) No. 2 TDDDG; where personal data is involved, Art. 6(1)(b) GDPR). “Delete address” removes everything for one address; deleting the app removes everything stored on the device. On iPhone, depending on your settings, iCloud Backup may contain a copy of this data, including your addresses, and restore it to a device. This backup is managed by Apple, not by us. On Android, the app does not take part in Google backup.
To our interface the app sends the text you type when searching, and when setting up the municipality, street and, if needed, house number and district of the town (section 3). Once the address is matched, the app only requests the dates with the district ID, also in the background; the operating system decides exactly when. As long as an address has no district ID or no online dates, even if you entered dates yourself, the app sends the address again: at most once a day, or every six hours if the provider's service was unavailable last time. The district ID is a random identifier for a collection area. Often many households share such an area. But if a provider keeps separate dates for individual houses, the ID belongs to exactly one address, and we could derive your address from it. We do not do that and do not store the ID together with information that identifies you. The exception is a problem report where you include the address and give further details about yourself, such as your email address or your name (below, “Report a problem”). The app does not send any account, device or advertising identifier. Section 2 applies to all requests, and section 5 also applies to the address search.
Reminders are scheduled by the app itself on your device as local notifications, and they also arrive without internet. We do not run a push service and receive no device identifier. Permission for notifications is voluntary and can be revoked at any time in your system settings. The app does not access your location.
The app also asks updates.tonntag.de at every cold start whether there is an update for its program code. It downloads such an update in the background from the same server and uses it from the next cold start. Both the check and the download send the platform, app version, update channel, the numbers of the program state currently in use and of the one shipped with the app, after a failed update also its number, and, for technical reasons, your IP address. These numbers are the same for all users of that state; the app sends no identifier of your device or installation. The purpose is to fix bugs quickly without waiting for a store update (Art. 6(1)(f) GDPR). We do not store these requests, and we have switched off Cloudflare Workers logging (Workers Logs) for the update server. What Cloudflare processes anyway during operation is described in section 2.
“Report a problem” is a form in the app. When you send it, the following goes to our interface: your text, the app version, the operating system with its version number (on Android the API level) and the app language. Optionally, you can add an email address for our reply and, if you turn on the “Include address” switch, your active address (place, street and house number as shown in the app) with its district ID. The switch is off at first. We store the report with a random report number and the time in our database at Cloudflare and send it by email to our mailbox tonntag@punktdev.com. Cloudflare handles the sending (Email Service). Cloudflare keeps a sending log with sender, recipient, subject (only the report number), time and delivery status for up to 31 days. We have turned off the content preview in this log. If we reply to you, section 9 applies. We do not store an IP address or device ID with the report. We limit reports to prevent abuse (section 5). We use the information only to find and fix the reported problem and to reply to you if you gave an email address. The legal basis is Art. 6(1)(f) GDPR; our legitimate interest is fixing errors in the dates and in the app. An hourly job deletes the report from the database after 180 days; section 9 applies to the email in our mailbox. If sending fails, you can send the report with your email app instead. The app then prepares a message with your text, app version, operating system and, if the switch is on, your address; we only receive it when you send it yourself.
Waste company: In the settings, the app names the waste company for your address and links to its website, for example for recycling centres and bulky waste. Our interface supplies the name and the website address together with the dates. If you tap it, the company's page opens in your system's browser window inside the app; the company's privacy policy applies there.
Battery notice on Android: The app checks on the device whether Android restricts it in the background and reads the device manufacturer to show a matching tip. Both stay on the device.
Links: “About Tonntag” opens tonntag.de; “Privacy”, “Terms of use” and “Legal notice” open the respective page on punktdev.com. The pages appear in your system's browser window inside the app; sections 1, 2 and 7 apply.
5. Protection against abuse
So that our service is not overloaded or scraped by automated mass requests, we limit the requests per connection for the address search (website and app), the date preview on the website, the waitlist sign-up, problem reports and other app requests. For this we calculate a check value from your IP address with a secret key that is newly generated every day (HMAC-SHA-256, truncated to 128 bits). We do not store the IP address itself. We store the daily key in our database and delete it the following day (after midnight UTC). As long as the key exists, a check value could be matched to an IP address by trial; we do not do that.
- Address search: 60 requests per minute, separately for the app and the website. Cloudflare counts the requests per check value (Rate Limiting) approximately and per location, each time only for the current minute.
- Waitlist: 5 sign-ups per minute, also counted by Cloudflare.
- Problem reports: 3 reports per minute, also counted by Cloudflare. From about 200 reports a day, for everyone together, we accept no more until the next day; for this we count the reports stored that day.
- Other app requests (address matching, place and street lists, fetching dates): 300 requests per minute, also counted by Cloudflare.
- Date preview: at most one answer every 5 seconds and 10 answers per hour, plus an overall cap for all connections together. For this we store the check value with a counter, the start of the counting period and the time of the next possible answer in our database. An hourly job deletes entries whose counting period started more than 24 hours ago.
The database's restore history (Cloudflare D1) goes back up to 30 days; deleted entries technically remain there for that long. If a limit is exceeded, we ask you to try again later. The legal basis is Art. 6(1)(f) GDPR; our legitimate interest is protection against abuse and against mass extraction of data.
6. Waitlist
If you join the waitlist on tonntag.de, we process your email address and, if you searched for an address beforehand, only the municipality, not the street or house number. We use this data solely to inform you about the launch of Tonntag, including whether Tonntag is available for your area.
Sign-up uses double opt-in: you receive an email with a confirmation link and are only added after you click it. Our server passes your details directly to Brevo for this and does not store them itself. Brevo (Sendinblue GmbH, Köpenicker Straße 126, 10179 Berlin, Germany) stores the data and sends the emails as our processor (Art. 28 GDPR); the data is stored in the EU. To be able to prove your consent (Art. 7(1) GDPR), Brevo stores the time of sign-up and confirmation and the IP address from which you confirmed.
Brevo redirects the links in the emails through its own addresses and embeds a small invisible image. When you open an email or click a link, Brevo technically notices this, together with the IP address and information about the browser or email app. We have set Brevo to count opens and clicks anonymously only. Brevo does not link them to any contact, so we only see totals and not whether you opened an email or clicked a link. This is how the confirmation email is set up. If anything different applies to the launch notification, we will update this section beforehand. The numbers give us a rough idea of whether our emails arrive and are opened. They are not exact, because some email apps load images automatically. We do not use them for advertising or profiles. The counting cannot be switched off at Brevo.
For every email sent, Brevo keeps a sending log with the recipient address, subject, time and delivery status and deletes it after one month. Brevo does not store a preview of the content in these logs. Your email app loads the logo in the email from tonntag.de when you open it (section 7).
The legal basis is the consent you give when signing up (Art. 6(1)(a) GDPR, and for the counting also Section 25(1) TDDDG). You can withdraw it at any time with effect for the future, using the unsubscribe link in the launch notification or by emailing tonntag@punktdev.com. If you do not confirm your sign-up, you will not receive any further emails. Because the counting cannot be separated from sending, withdrawing also removes you from the waitlist. We keep the data until you withdraw or until the launch campaign is complete, at the latest until 6 months after the app launch, and then delete it.
7. Website tonntag.de
The website tonntag.de is delivered via Cloudflare (section 2). It sets no cookies, stores nothing in your browser and uses no analytics, tracking or advertising services. Fonts and images are served from our own server; apart from our interface api.tonntag.de the page makes no requests. The legal notice, privacy policy and terms of use are hosted on punktdev.com (section 1). If you open an external link, for example to a store, the privacy policy of that provider applies there.
8. App Store and Google Play
You get Tonntag from Apple's App Store or Google Play. Apple and Google process account, download and, where applicable, payment data as independent controllers under their privacy policy (Apple) and privacy policy (Google). For users in the EU these are Apple Distribution International Ltd. and Google Ireland Ltd., both in Ireland. The stores provide us with aggregated usage and sales figures. For purchases, individual order and transaction details may also be available to us. Depending on your permissions and settings, the platforms may provide technical crash reports. We do not receive full card or bank details. We use personal order and transaction details only to handle purchase and support requests (Art. 6(1)(b) GDPR). We delete our own copies, for example from a support request, once the matter is closed. The seller towards you is Apple or Google, and the store sends you the invoice.
Tonntag Pro is bought directly in the App Store or on Google Play. The app asks the store for the price. On purchase it receives from the store the product ID, transaction ID, purchase time, purchase status and the store's proof of purchase, uses them to check the purchase and then confirms it with the store. On start, when you return to the app (at most once a minute), when you open the Pro screen and on “Restore purchase” it asks the store which purchases your store account has for Tonntag. If the store reports that Pro is no longer bought, for example after a refund, the app removes the purchased unlock. On the device it only stores two flags: whether Pro was bought and whether it was a gift. It does not keep the proof of purchase or the IDs, and nothing is sent to our server. You get Pro as a gift if you already had at least one address in the app when the version with Tonntag Pro first started; the app determines this on the device. The purchase is voluntary. Without this processing, purchased Pro cannot be unlocked or restored. The legal basis is Art. 6(1)(b) GDPR.
9. Contact by email
If you email us, for example at tonntag@punktdev.com, the message arrives in our company mailbox at Microsoft 365 (Microsoft Ireland Operations Ltd., Ireland). Microsoft stores the email including content and attachments as our processor under a data processing agreement (Art. 28 GDPR), generally in data centres in the EU. For transfers to Microsoft Corporation in the USA, for example for support or security, Microsoft relies on the EU-US Data Privacy Framework and EU Standard Contractual Clauses.
Emails to addresses at tonntag.de, for example a reply to the waitlist confirmation email, are first received by Cloudflare's Email Routing service and forwarded to this mailbox. Cloudflare processes the sender, recipient and time and does not store the content permanently.
We process your address, the content and any information you choose to provide in order to answer your request. The legal basis is Art. 6(1)(b) GDPR for contract-related requests and otherwise Art. 6(1)(f) GDPR; our legitimate interest is answering requests. We delete the message once it is no longer needed for follow-up questions, legal defence or statutory retention obligations. Providing data is voluntary; without a reply address we cannot answer.
10. Recipients and processing outside the EU
We use these service providers for the purposes described:
- Cloudflare, Inc. (USA): hosting of the website, interface, database and update server (section 4), request limiting (section 5), sending problem reports from the app to our mailbox (section 4) and forwarding of emails to addresses at tonntag.de, as our processor under a data processing agreement (Art. 28 GDPR). Cloudflare is certified under the EU-US Data Privacy Framework; EU Standard Contractual Clauses apply in addition. Details are in the Cloudflare DPA.
- Brevo (Sendinblue GmbH, Germany): storage of the waitlist and sending of the related emails as our processor under a data processing agreement (Art. 28 GDPR), stored in the EU (section 6).
- Microsoft Ireland Operations Ltd. (Ireland): Microsoft 365, our email mailbox, as our processor under a data processing agreement (Art. 28 GDPR). Data is generally stored in the EU; transfers to Microsoft Corporation (USA) are covered by the EU-US Data Privacy Framework and EU Standard Contractual Clauses.
In the cases described in section 3, the waste providers' online services receive the municipality, street and house number from our server, without any information about you. Apple and Google are independently responsible for the App Store and Google Play (section 8). You can request a copy of the safeguards at tonntag@punktdev.com.
11. Your rights
Subject to the statutory requirements, you have the right of access, rectification, erasure, restriction of processing and data portability, and the right to withdraw any consent with effect for the future.
Objection: Where we process personal data on the basis of legitimate interests, you may object at any time on grounds relating to your particular situation.
You have the right to lodge a complaint with a data protection supervisory authority, for example the Landesbeauftragte für Datenschutz und Informationsfreiheit Nordrhein-Westfalen (LDI NRW), Kavalleriestraße 2-4, 40213 Düsseldorf, Germany.
Your address list, dates, reminders and settings in the app are stored on your device. We cannot view them, delete them for you or hand them over; you do that directly in the app. If you reported a problem, give us the report number the app shows after sending so we can provide access or delete it; for a report by email, give us your sender address and the approximate time. We do not store who requested an entry in the collection directory (section 3). If an entry concerns you, for example your own address, tell us the address so that we can review your request (Art. 11(2) GDPR). You are not obliged by law or contract to provide us with data. Without an address, however, we cannot show you any dates, and without an email address we cannot notify you about the launch.
12. Changes and language versions
We update this policy when the app, the website or the law changes. The version published here applies. This is a translation of the German version, which prevails in case of discrepancies.