Animiyo cookie policy
Cookies, local storage and measurement tools used by Animiyo: which ones need consent, how long they last and how to withdraw it.
- Effective from
- August 2, 2026
- Last updated
- August 2, 2026
- Version
- 1.0
Animiyo is a platform for managing companion animals, made of a web application served by Google Cloud Run and a native iOS application, both backed by the Firebase backend of the petdiary-10327 project. The public site hosts the showcase, the blog, the guides and the legal documents, while the application itself requires authentication. This document lists in detail every cookie, every local storage key and every external resource the browser contacts while you navigate. For each entry it states who sets it, the purpose, the lifetime and whether consent is needed. Information about the processing of personal data in the wider sense, including legal bases and data subject rights, is in the privacy notice.
Cookies and similar tools: what this covers
A cookie is a small text file that a site asks the browser to keep and to send back on later visits. Alongside cookies there are other technologies that write information on the device without using the same mechanism: localStorage, which keeps key and value pairs until they are explicitly deleted, and IndexedDB, a database inside the browser suited to more structured objects.
The difference is technical, not legal. Article 122 of the Italian Privacy Code speaks of information stored in the terminal equipment of the user and of access to information already stored, so it covers cookies, localStorage and IndexedDB in the same way. That is why the list below is not limited to cookies in the strict sense: it includes every write Animiyo performs on your device and every external resource the browser contacts on our behalf.
- Cookies: in our case they come from third parties when the page loads their resources, namely _GRECAPTCHA for abuse protection and the Google Analytics 4 cookies once consent is given.
- localStorage: used by Animiyo for appearance preferences, for the display currency of the budget module and for the open state of the navigation menu groups.
- IndexedDB: used by Firebase Authentication to keep the token that keeps you signed in between one page load and the next.
When consent is required
The general rule is in article 122 of legislative decree 196/2003, as amended by legislative decree 101/2018, which implements directive 2002/58/EC in Italian law. Storing information on the user device and accessing information already stored are allowed only with informed consent, subject to two exceptions: carrying out the transmission of a communication over an electronic communications network and providing a service explicitly requested by the user.
The guidelines of the Italian data protection authority on cookies and other tracking tools, adopted on 10 June 2021, explain how that rule applies. No consent for technical cookies and for the local storage needed to deliver the service; prior, freely given and revocable consent for third-party analytics tools that are not reduced to purely statistical purposes and stripped of identifying data.
- Exempt from consent: the authenticated session, the abuse attestation, interface preferences saved at the request of the user, the page language.
- Subject to prior consent: Google Analytics 4, which is a third-party service and receives data that is not anonymised at source.
This document covers only what is written on or read from your device. The full picture of the processing activities, with controller, purposes, legal bases, retention periods and data subject rights, is described in the privacy notice: this page should be read as its technical annex, not as a standalone document.
Browser local storage
The entries below are written by Animiyo in the local storage of the browser. They are not cookies in the technical sense, because they do not travel with requests to the server, but they fall under the same rule in article 122 and therefore have to be declared here.
| Key | Content | Purpose | Lifetime |
|---|---|---|---|
| animiyo.appearance | Light, dark or system theme, accent colour, text scale, font family, high contrast, reduced motion, interface style | Apply the appearance preferences chosen by the user | Persistent until it is deleted |
| animiyo.budget.displayCurrency | Display currency chosen in the budget module | Show amounts in the preferred currency | Persistent until it is deleted |
| pd:navGroups followed by the role | Open state of the navigation menu groups | Find the side menu as you left it | Persistent until it is deleted |
Appearance preferences are read by an inline script that runs before the page is painted for the first time. Its job is to avoid theme flicker, that is the flash of light interface that would appear for a fraction of a second before the dark theme is applied. The script only reads the animiyo.appearance key and makes no network call.
All three entries stay on the device, are never sent to third parties and serve to deliver a service explicitly requested by the user, namely remembering the settings chosen. That is why they fall within the consent exemption. You can remove them whenever you want by clearing the site data in your browser: the interface will simply go back to its default values.
Third parties and external resources
When a page loads a resource from an external domain, that domain necessarily receives the IP address of the browser and the request headers: this is how the protocol works, not a tracking choice. The table lists the domains that Animiyo pages contact and the data they receive.
| Domain | Service | Data it receives |
|---|---|---|
| google.com | Firebase App Check with reCAPTCHA Enterprise | IP address, browser headers, _GRECAPTCHA cookie |
| recaptcha.net | Alternative domain used to load reCAPTCHA | IP address and browser headers |
| googletagmanager.com | Loading of the Google Analytics 4 library | IP address and browser headers, only after consent |
| google-analytics.com | Sending of measurement events | IP address and pseudonymous usage events, only after consent |
| tile.openstreetmap.org | Map tiles for the walk maps | IP address and coordinates of the tiles requested |
| openFDA, Open Pet Food Facts, dog.ceo, Wikipedia, iNaturalist, frankfurter.app | Public databases queried directly by the browser | IP address and parameters of the individual request |
The public databases in the last row are queried only when you open the features that use them, for example a search for an active ingredient, a pet food record or a currency conversion. In the context of Animiyo they do not set cookies useful for tracking, but they still receive the IP address of whoever makes the request.
How to give and withdraw consent
The choice about statistics is always reversible and never final. The preferences panel opens from the link at the bottom of every page, both on the public site and inside the application.
Open the preferences panel
Scroll to the bottom of any page and use the link to cookie preferences. The panel shows the categories with their current state, without sending you anywhere else.
Decide category by category
Technical tools are marked as always on, because without them the service cannot be delivered. Statistics have a separate switch: you can accept or refuse them without changing anything in the other categories.
Save and check
The choice is recorded on the device and reapplied on later visits, so the panel does not reappear on every page. If you open the site from another browser or another device the choice has to be made again, because it stays local.
Withdraw whenever you want
Open the same panel and switch statistics off: from that moment the measurement library is no longer loaded and no new _ga cookie is set. Withdrawal takes effect immediately and does not require closing the browser.
Remove what is already there
Withdrawal blocks future writes but does not delete cookies that are already saved. Clear the site data in your browser, or install the add on published by Google to disable Analytics, which works across every site you visit.
If you would rather not use the panel, the same effects can be obtained from your browser settings, from private browsing or by deleting site data by hand. These are blunter instruments, because they act on all categories at once, but they remain fully valid.
Browser and system controls
Every browser has its own controls, independent of the site panel, that apply to every site you visit. The exact paths change with versions, so they are described in words here rather than with direct links.
- Chrome: in settings, under the privacy and security section, the entry for cookies and site data lets you block third-party cookies, clear data on exit and act on a single site.
- Safari: the privacy pane in the preferences holds cross site tracking prevention, blocking of all cookies and management of website data; on iPhone and iPad the same entries sit in the system settings for the browser.
- Firefox: in the privacy and security section, tracking protection offers a standard level, a strict level and a custom one, along with cookie and data management per site.
- Edge: the section for cookies and site permissions lets you block third-party cookies, set per site exceptions and choose to clear data on close.
Private or incognito browsing uses a separate store that is emptied when all windows are closed. It is useful for a one off visit, but it does not prevent writes during the session: it simply does not keep them.
Transfers outside the European Union
The main resources of the platform, that is Cloud Run, Cloud Functions, Cloud Firestore and Cloud Storage, are located in the us-central1 region, in the United States. Data collected by the measurement tools may therefore be processed outside the European Union.
- Google Ireland Limited as the contracting counterparty for the measurement services.
- Standard contractual clauses of implementing decision 2021/914.
- Certification of Google LLC under the EU United States Data Privacy Framework.
- Encryption of data in transit and at rest.
The residual risk cannot be reduced to zero and has to be stated. Once data sits under a jurisdiction other than the European one, local authorities may in theory make access requests under their own domestic law. If you do not want to take that risk for measurement data, refuse consent to statistics: in that case no event is sent to Google Analytics. Technical tools, on the other hand, remain necessary for the service to work and do not send browsing data for measurement purposes.
What we do not use
A list of absences is as verifiable as a list of presences: if you find something in your browser that does not appear in the tables above, either it is a mistake on our side or it does not come from Animiyo.
- Advertising cookies and ad networks: none, on any page of the site or of the application.
- Social network pixels and measurement tools: absent.
- Device or browser fingerprinting techniques: not used.
- Commercial profiling and behavioural advertising: not carried out.
- Sale or transfer of data to brokers: never, on any basis.
- Training of models on user data: excluded.
- Payment cookies: absent, because the Stripe gateway present in the code is disabled and no payment is processed.
Updates to this policy
At the top of the page you will find the document version, the effective date and the date of the last revision: these are the three references to quote in any report. Earlier versions stay tracked in the version control system of the code, which is the authoritative history.
The list is checked periodically and whenever the dependencies that load external resources change. If a library stops being used its row disappears from the tables; if a new one is introduced its row appears before the feature reaches production.
When the purpose of a tool changes, or a new tool subject to consent is introduced, the consent already collected is no longer valid: the preferences panel is shown again and statistics stay off until you make a new choice. For reports or questions about this document you can use the Contacts page, at the path /contatti.
Frequently asked questions
- Do I have to accept cookies to use Animiyo?
- No. Everything needed to make the platform work falls among the technical tools, which require no consent: the Firebase Authentication session, the App Check attestation and the preferences saved in the browser. Consent is required only for Google Analytics 4, which helps us understand how the pages are used and affects no feature. If you refuse it, the application behaves exactly as before.
- What happens if I block browser local storage?
- Signing in stops holding. Firebase Authentication keeps the session token in IndexedDB and localStorage: if the browser prevents the write, every page reload sends you back to the sign in screen. You would also lose the appearance preferences and the display currency, which would return to their defaults on every visit. Blocking third-party cookies alone does not produce this effect.
- Why do I see a google.com cookie even though I refused statistics?
- Because it is not a statistics cookie. It is _GRECAPTCHA, set by reCAPTCHA Enterprise on behalf of Firebase App Check, which verifies that calls to our APIs come from a genuine application and not from an automated script. Without a valid attestation the Cloud Functions may reject requests, so that check is part of how the service works. This is why it counts as a technical tool and is set regardless of your choice about statistics.
- How do I delete Analytics cookies already stored on my device?
- Withdrawing consent prevents new writes, but it does not remove cookies that are already saved. You need to delete them from your browser, in the section that manages site data, by clearing the entries for the Google domains. Alternatively you can install the add on published by Google to disable Analytics, which works across every site you visit. Private browsing, finally, empties the store when the window is closed.
- Does Animiyo sell my data or use it to train models?
- No, in any form. There are no advertising cookies, no social network pixels, no fingerprinting techniques and no commercial profiling. The data collected by the measurement tools stays pseudonymous and serves to understand which pages are useful, not to build a profile of who is reading. What you record about your animals never feeds the training of any model.
- Do the walk maps track me through cookies?
- No. The maps load their tiles from tile.openstreetmap.org, which receives the IP address of the browser and the coordinates of the tiles requested, because without that information it could not serve the images. No cookie useful for tracking is set in this context. If you never open a map, that domain is not contacted at all.
In short
Open the preferences panel from the link at the bottom of the page and check the choice you made about statistics. If you want to withdraw it, switch the category off and then clear the Google cookies already stored in your browser, because withdrawal only blocks future writes. For the full picture of our processing activities move on to the privacy notice and to the page about exercising your rights; for any doubt about this document write from the Contacts page.