GDPR guide for studio managers
This page explains how Agon helps you comply with GDPR, what data is stored, which optional features send data outside your computer, how to respond to client data requests, and your responsibilities as the data controller.
This guide explains how Agon works so you can assess your own obligations. It is not legal advice. Your studio is responsible for its own GDPR compliance; if you are unsure, ask a data-protection professional.
Your role under GDPR
As the studio manager using Agon, your studio is the data controller: it decides how your clients' personal data is collected, stored and used.
Agon is software that you install and run on your own computer. Your studio's database lives on that computer, and Agon's developer has no access to it. Running the software does not make Agon's developer a processor of your client data.
Data leaves your computer only through services that you choose to use, or that are needed to let clients reach you:
| Feature | Who receives data | Their role for your studio | On by default? |
|---|---|---|---|
| Remote connectivity (mobile app and website widget) | Agon's developer, with Cloudflare as sub-processor | Processor, for connectivity only | Yes, when the tunnel is active |
| AI Assistant | The AI provider you choose (for example Google or Groq) | Processor, under your own agreement with them | No |
| Error reporting | Agon's developer, through Sentry (EU) | Processor | No |
| Feedback and support tickets | Agon's developer, through a dedicated Cloudflare Worker/database/storage | See note below | Opt-in, per submission |
| Payments | Stripe, with your own Stripe account | Under your own agreement with Stripe | No |
| Cloud backup | The backup provider you connect (for example Google Drive or Dropbox) | Under your own agreement with them | No |
| Email and SMS | The email and SMS providers you configure | Under your own agreement with them | No |
List the services you use in your studio's privacy policy and records of processing.
Supervisory authorities. Agon's developer (Edoardo Casciotta, Barcelona, Spain — support@agon-studio.dev) is established in Spain, so the competent supervisory authority for the processing it carries out as your processor is the Spanish Agencia Española de Protección de Datos (AEPD). As data controller, your studio answers to the data protection authority of its own country, which is usually where you report a breach or respond to a client complaint.
What data Agon stores
Agon stores the following personal data for each client:
| Data | Where it is used |
|---|---|
| Full name | Booking roster, client profile, notifications |
| Email address | Login, push notifications |
| Phone number | Optional — staff reference only |
| Date of birth | Optional — staff reference only |
| Profile photo | Optional — shown in client profile |
| Booking history | Attendance records, reports |
| Check-in history | Attendance records, reports |
| Payment history | Revenue reports, financial records |
| GDPR consent log | Compliance record |
All data is stored in an encrypted SQLite database on your computer. It never leaves your machine except through the services described in Your role under GDPR.
Remote connectivity
So that your clients can use the mobile app and your website widget from anywhere, Agon connects your computer to the internet through a Cloudflare Tunnel on an agon-studio.dev web address (for example studio-….tunnel.agon-studio.dev).
- Who is involved: the tunnel and its web address are operated by Agon's developer, using Cloudflare's network. For this purpose only, Agon's developer acts as your processor and Cloudflare as a sub-processor, under the Article 28 GDPR Data Processing Agreement in Section 6 of the Terms of Service.
- What passes through: requests between your clients' devices and your computer (for example a booking) travel through Cloudflare's network, encrypted with HTTPS. Your database stays on your computer; the tunnel does not store it.
- The studio directory: a small directory run by Agon's developer stores only your studio's public ID and its current web address, so the app and widget can find your studio after a restart. It stores no client, booking or other studio data.
- Offline booking requests: when your computer is off, a client's booking request can wait in a mailbox on the same directory. It is encrypted on the client's device with a key that exists only on your computer, so nobody else, including Agon's developer, can read it. Your computer collects and deletes it as soon as it comes back online, and in any case the mailbox deletes it automatically after 7 days if it is never collected.
AI Assistant
The AI Assistant uses an AI provider key that belongs to your studio (for example Google Gemini or Groq), or a local model on your own computer.
- Your studio contracts directly with the provider. When you create an API key, you accept that provider's terms. The provider then acts as your processor for the prompts you send. Agon's developer is not involved: prompts go directly from your computer to the provider.
- What is sent: the question typed into the assistant, the recent conversation, relevant pages from this documentation, and the studio data needed to answer (for example class names, or aggregated figures for business questions). Anything you or your staff type, including client names, is sent too.
- Free tiers: some providers' free tiers may use submitted data to improve their models. For questions that include client data, use a paid tier or a local model (Ollama), and check the provider's current terms and data-processing agreement.
- Without a provider, the assistant runs in basic mode: a documentation search on your computer, and nothing is sent anywhere.
- Removing the key: click Remove key in Settings → AI Assistant and confirm. The key is deleted from your local database and the assistant switches to basic mode immediately, so nothing more is sent to that provider. If the key may have leaked, also revoke it in the provider's console (Google AI Studio or the Groq console). The key is stored encrypted and is never shown again after saving.
Feedback and support
Agon's desktop Feedback screen lets any staff member report a bug or request a feature. Submitting one sends the ticket to Agon's developer, so that it can be read and worked on — it only happens when a staff member deliberately submits a ticket.
- What is sent: the ticket type (bug or feature), the title and description you write, the Agon version, your operating system, 0-3 optional photo/video attachments you choose to add, and the submitting staff member's own account email (always included automatically, so every ticket can be followed up on — there is no way to submit a ticket anonymously). Including your studio's name is a separate, optional choice on the form. Whatever you or your staff type in the title or description — including client names, if you choose to mention them — is sent as written; avoid including client personal data in a ticket and describe the problem instead.
- Where it goes: to Agon's developer, stored in a dedicated database and file storage bucket operated for this purpose. It is not mixed with your studio's own database, and not sent to Sentry or any AI provider.
- Retention: there is no automatic deletion for feedback tickets today. You can ask for a ticket (and any attachment) to be deleted by emailing support@agon-studio.dev with the ticket details.
- Opting out: this is opt-in by nature — nothing is sent unless a staff member fills in and submits the form. There is no setting to disable the Feedback screen itself; simply don't use it if you'd rather email support@agon-studio.dev directly with no attachments or structured fields.
Error reporting
Error reporting helps Agon's developer find and fix bugs. It is opt-in and off by default: nothing is sent unless the studio manager turns it on in Settings → Privacy.
- What is sent: technical details of an unexpected error (the error type and message, and where in the code it happened), the Agon version, and your studio's ID so reports can be grouped. Before anything leaves your computer, Agon removes email addresses, phone numbers, login tokens and request contents.
- Where it goes: to Agon's developer, through the error-tracking service Sentry, with data stored in the EU. Agon's developer acts as your processor for this data, with Sentry as sub-processor, under the Article 28 GDPR Data Processing Agreement in Section 6 of the Terms of Service. IP addresses are not stored.
- Which apps: your choice applies to the desktop app and to your studio's mobile app and website widget. They send reports only if you turned it on.
- Retention: error reports are retained for up to 30 days and then deleted automatically.
- Turning it off: switch it off in Settings → Privacy. It stops immediately.
Legal basis for processing
You must have a valid legal basis to store and process client data. The most common bases for fitness studios:
- Contract — processing is necessary to manage bookings, memberships, and payments (GDPR Art. 6(1)(b))
- Consent — needed where you use Marketing Automations to send a client scheduled marketing emails or texts (for example a win-back sequence to a client who has gone quiet) that go beyond fulfilling an existing booking or membership. A purely transactional message tied to something the client just did (a booking confirmation, a password reset) relies on Contract instead and does not need separate consent.
- Legal obligation — retaining financial records is required by tax law in most countries (GDPR Art. 6(1)(c))
Agon records consent automatically when a client accepts the privacy policy and terms of service during account creation.
Client data export
Under GDPR Article 15 (right of access) and Article 20 (right to data portability), a client can request a full copy of their personal data.
To export a client's data:
- Open the client's profile in the Clients section.
- Click Export data.
- A JSON file is generated containing all data held about that client:
- Personal information (name, email, phone, date of birth)
- All bookings and check-ins
- All payments
- GDPR consent log
- Download the file and send it to the client.
You have 30 days from the date of request to provide the export.
Client deletion (anonymisation)
Under GDPR Article 17 (right to erasure), a client can request deletion of their personal data.
In Agon, "deletion" means anonymisation — personal identifiers are replaced with anonymous placeholders, while booking records and payment history are retained for financial and statistical purposes. This is the legally correct approach: GDPR allows retention of data for legitimate business purposes such as tax and financial record-keeping.
What is anonymised (removed):
- Full name → replaced with "Deleted Client"
- Email address → replaced with an anonymous placeholder
- Phone number → removed
- Date of birth → removed
- Profile photo → removed
What is retained (anonymised, not identifiable):
- Booking and attendance records (statistical value; no personal identifiers)
- Payment records (required by financial regulations)
To anonymise a client:
- Open the client's profile.
- Click Delete client.
- Read the summary of what will be removed and what will be kept.
- Click Confirm deletion.
This action is permanent and cannot be undone.
Clients can also initiate deletion themselves from the mobile app: Profile → Privacy → Delete my account.
The consent log
Every time a client accepts the privacy policy or terms of service — at account creation, or when a new version is published — Agon records:
- Which document they accepted (privacy policy or terms of service)
- The version of the document
- The date and time of acceptance
- The client's IP address
To view a client's consent log:
- Open the client's profile.
- Scroll to Consent log.
The consent log is also included in the data export.
Privacy policy
Agon includes a template privacy policy that you must customise with your studio's details before going live. The template is available in the onboarding wizard and in Settings → Privacy Policy.
You are responsible for ensuring your privacy policy is legally adequate for your jurisdiction. The template is a starting point only — Agon is not responsible for its legal accuracy.
Data retention
Since all data is stored on your machine, you control how long it is retained. Agon does not delete data automatically (except as part of the anonymisation process described above).
Recommended practices:
- Keep client data for as long as you have a relationship with the client
- After a client requests deletion, anonymise their data as described above
- Financial records (payments, invoices) should be retained for the period required by your local tax law (typically 7–10 years)
- Regular backups ensure you have a recoverable copy of your data
Data breach procedure
If you discover that your Agon database has been accessed by an unauthorised party (for example, your computer was stolen or hacked):
- Disconnect the computer from the internet immediately
- Assess what data may have been accessed
- Notify your own national data protection authority (the one your studio answers to as controller) within 72 hours of discovering the breach (if the breach is likely to result in a risk to individuals' rights)
- Notify affected clients if there is a high risk to their rights and freedoms
- If you need help securing your installation, email support@agon-studio.dev (don't include client data in the email)
What if something goes wrong?
A client says they never consented to data processing Check their consent log in the client profile. The log records every consent event. If they created an account in Agon, they accepted the terms at that point — the log will confirm it.
A client is requesting data that I can't find in Agon The data export covers all data stored in Agon. If the client is asking about data from a previous platform, that data is outside Agon's scope.
I need to delete all data (e.g. closing the studio) Agon does not have a bulk deletion tool in V1. You can delete the database file from your computer to remove all data. Make sure you have resolved all outstanding financial obligations first.