1. Controller and contact
Controller: Frame Web Builder · tax identifier: Not applicable · address: Madrid, Spain.
Registration details: Not applicable. Privacy contact: privacy@balla.es. Declared primary jurisdiction: Spain.
2. Personal data we process
- Account and identity data: name, email, user identifiers, organization, role and preferences.
- Usage and project data: projects, pages, settings, resources, editor actions, exports, project invitations, collaboration presence (for example selected block/breakpoint) and metadata needed to provide the service.
- Technical and security data: IP address, user agent, sessions, authentication events, security logs, errors and anti-fraud/abuse signals.
- Support, communications, abuse-notice and billing data when those functions are enabled.
- Cookie/browser-storage preferences and optional telemetry only when the relevant consent exists.
3. Sources of personal data
We obtain data directly from users when they create or use an account, from workspace owners/admins when they manage members, from the technical systems involved in authentication, security, billing and service delivery, and from third parties where the user initiates an integration or communication with them. Where customer content contains data about another person, the customer is responsible for having an appropriate legal basis to place that data in the service.
4. Purposes and legal bases
- Performance of a contract: create and manage the account/workspace, save projects, collaborate, preview, export, provide support and deliver requested features.
- Legal obligation: comply with tax, accounting, consumer-law obligations, valid authority requests and other applicable duties.
- Legitimate interests: protect accounts and infrastructure, prevent fraud/abuse, diagnose incidents, preserve security evidence and improve reliability, balanced against user rights.
- Consent: optional analytics/product telemetry and other purposes explicitly presented as optional. Consent can be withdrawn at any time.
5. When we act as controller or processor
Frame acts as controller for personal data it decides to process to administer accounts/workspaces, provide and secure the service, bill, comply with legal obligations, provide support and prevent abuse.
Where a customer places personal data inside its own projects or resources and determines why and how that data is used, the customer may act as controller and Frame as processor for that content. Applicable customer-instruction processing obligations are described in the Terms of Use and, where appropriate, any specific agreement entered into with the customer.
6. Required data and automated decisions
Data marked as required is needed to create an account, authenticate the user or provide a requested feature. Not providing it may prevent that feature. Optional data can be omitted without losing essential functionality.
By default, Frame does not make solely automated decisions producing legal or similarly significant effects on users. If such a feature is introduced, this policy and the corresponding controls must be updated before activation.
6a. GitHub, Vercel and connected publishing
When a user voluntarily connects GitHub or Vercel, Frame receives and stores basic account identifiers and OAuth credentials needed to carry out export/publishing instructions. Credentials are stored only server-side, encrypted and bound to the user/workspace that made the connection; they are not placed in project JSON or exported code and are not reused for another member.
When publishing, Frame may read repositories authorized by the user, write the generated export to the selected repository/branch, record commit identifiers and create or connect a project in the chosen Vercel account/team. GitHub and Vercel also process data under their own terms and policies. Users can disconnect an integration in Settings and can also revoke authorization directly with the provider.
6b. Real-time collaboration
When a paid workspace enables simultaneous editing, Frame shares with authorized collaborators the visible identity needed for presence (for example name/avatar), permission and ephemeral interaction signals such as selection or breakpoint. Project changes are synchronized through a CRDT document and coordinated through Cloudflare Workers/Durable Objects; room state may be retained there for continuity/recovery and is periodically consolidated into PostgreSQL as the durable project version.
Connection tickets are short-lived, are not stored in localStorage or included in project data, and permissions/billing are revalidated periodically. Owners control invitations and roles and can reset a room to invalidate a previous collaborative session.
6c. AI-assisted translation
If the workspace expressly enables assisted translation, Frame sends only the selected source strings, locale codes and minimal editorial context needed for translation to the OpenAI account configured by that workspace. The provider key remains encrypted server-side and is not placed in project data or exported code. Frame requests no provider response storage through the API configuration, without prejudice to the terms and processing applicable to the provider account configured by the customer.
Use of this feature is optional, is identified as AI processing and retains sufficient provenance for review and rollback inside the editorial workflow. It is not used by default to make decisions based solely on automated processing that produce legal effects or similarly significantly affect a person.
7. Recipients and processors
Data may be disclosed to authorized personnel and service providers acting as processors where needed for hosting, authentication, databases, storage, communications, payments, support or monitoring, with access limited to the contracted purpose and subject to applicable contractual safeguards.
Data may also be disclosed when legally required, under a valid authority order, or where necessary to establish, exercise or defend legal claims. Personal data is not sold as part of the service's ordinary operation.
8. International transfers
If a provider processes data outside the European Economic Area and applicable law requires a transfer safeguard, an applicable adequacy decision, Standard Contractual Clauses or another legally recognized mechanism must be in place, with supplementary measures where necessary. The effective mechanism depends on the provider’s actual region, account and contract and is not inferred from application code. Information about applicable safeguards can be requested through the privacy contact.
9. Retention
Account and project data is retained while the account/workspace is active and needed to provide the service. After deletion or termination, data is deleted or anonymized when no longer needed, except data that must be blocked or retained for applicable legal periods, limited-rotation backups, security, abuse prevention or legal claims. Abuse notices and rights requests containing sensitive details are stored encrypted in separate records until their configured retention periods expire; the operational ledger retains only case identifiers, state and evidence hashes, not the free-form notice or request content. Logs are retained only for a period proportionate to their purpose.
10. Your rights
Where applicable, you may exercise rights of access, rectification, erasure, objection, restriction and portability, and withdraw consent without affecting the lawfulness of prior processing. Requests may require reasonable identity verification and, for workspace data, verification of authority over that workspace.
You can exercise them by contacting privacy@balla.es. If you believe processing infringes applicable data-protection law, you may lodge a complaint with the Spanish Data Protection Agency or another competent supervisory authority.
11. Security and incidents
We apply technical and organizational measures designed to protect data against unauthorized access, alteration, loss or disclosure, including access controls, workspace isolation, server-side validation, security logging and secret protection. No system can guarantee zero risk. Where a personal-data incident requires notification under applicable law, notifications will be made within the legally required timeframes and to the required recipients.
12. Children, changes and contact
Frame is not directed to children who cannot validly enter into the service agreement or provide any consent that may be required on their own behalf. If we identify children's data processed without a valid basis, we may restrict the account and take appropriate deletion steps.
We will update this policy when the described processing, applicable obligations or service features materially change. Privacy questions can be sent to privacy@balla.es.