Garage — Privacy Policy

Last updated: 2026-09-19

Garage ("the app") is a shared vehicle-upkeep app: fuel logging, a maintenance calendar, and smart maintenance bundling, shared across the members of a garage. This policy explains what data the app processes, why, and the choices you have. It is written to be accurate to how the app actually works.

Who is responsible

The data controller is Karlo Hrvačić, who runs garage.hrva.cc. For any privacy request, contact garage@hrva.cc.

What the app collects

The app only stores what you enter or what is needed to run your account:

Kept on your device

Some things are stored on the phone or browser itself, never on our servers:

Signing out deletes the copies of your garage and of your cars' entries, as above. Clearing the app's data, or uninstalling it, removes all of these.

VIN lookups (only when you ask for one)

The vehicle form has a Look up button next to the VIN field. Pressing it sends that VIN — and nothing else — to the United States NHTSA vPIC registry (vpic.nhtsa.dot.gov), a free government service, to fill in make, model, and year. This is a transfer outside the EU, it happens only when you press the button, and no account data accompanies it. Leave the button alone and no VIN ever leaves your device.

The vehicle's Car tab has a Check for recalls button. Pressing it sends the make, model, and year — and nothing else — to the same registry (api.nhtsa.gov) to look for open safety recalls. This is also a transfer outside the EU, it also happens only when you press the button, and it is asked for once per visit rather than remembered. The registry is American, so a European vehicle may have recalls that never appear there and a match may not apply to a European build; the app says so beside the button.

Webhooks (only if you register one)

If you register a webhook, what happens in your garage is posted to the URL you chose, signed with that webhook's secret: an entry as it was saved, edited or deleted; a vehicle added, archived, restored, lent, returned or handed over, by name and without its plate or VIN; a member joining or leaving, by display name; and the kinds of work and the day they fall due. A chat service such as Discord, Slack, Teams or Telegram gets a readable summary instead, in the language you chose for the webhook, which for an entry includes the station, the amounts, the note and the display name of whoever logged it. You are choosing where that data goes; we deliver it to that address, retry for about an hour if it does not answer, and keep what was sent, when, and whether it arrived for 30 days, so your garage can see its webhook working.

Location (fuel stations, and filling in a fill-up)

If you grant the location permission, your device position is used on the device only, for two things: sorting nearby fuel stations by distance, and — when you are recording a fill-up at a station — filling in that station's name and its currently posted price for your fuel. The station list and its prices are already on your phone; matching your position against them happens there.

Your location is never sent to our servers and never stored. If you decline the permission, both features simply do nothing and the rest of the app works unchanged. The permission is requested only from the Fuel stations screen or from the control in Settings that explains it, never in the background.

Push notifications (only if you enable them)

If you allow notifications, Firebase Cloud Messaging issues your device a registration token. We store that token, and which account it belongs to, so a reminder that becomes due can be sent to the right devices. It is a device identifier: it identifies the installation, not you personally, and it changes if you reinstall the app or clear its data.

Google acts as a processor for delivery (see below). The message itself carries only what the reminder says — a vehicle's name and what is due. In a company garage an administrator can also ask the app to remind a driver that a receipt is missing; that is a push to the driver's own devices, sent once per request, carrying the vehicle's name and the entry's date. Signing out deletes the token for that device, and deleting your account deletes all of them.

What the app does not collect

Who processes your data

Your data is transmitted over encrypted connections (HTTPS/TLS).

How your data is shared

Your vehicle, fuel, and maintenance data is visible to the other members of your garage — that is the whole point of sharing one. It is never visible to any other garage, or to anyone outside yours. Access is enforced at the database level by row-level security, not only in the app.

Lending a car to someone outside your garage

You can give somebody a guest pass: a code that lets them log against one of your vehicles, for a set number of days, without joining your garage. This is what happens to their data and to yours.

Enforcement is at the database level by row-level security, not only in the app.

Company garages: an administrator and drivers

A garage on the company plan is a company's fleet, and the people in it are its employees. This is what each of them sees.

A driver is told this in the app the first time "My cars" opens.

Retention and deletion

Your rights (GDPR)

Children

The app is not directed at children and does not knowingly collect data from them.

Changes to this policy

If this policy changes, the updated version will be posted at garage.hrva.cc/privacy with a new "last updated" date.