Privacy Policy
Last updated: November 2, 2026
Plyed ("we") is a visual site builder: a desktop app for building Astro websites, with optional AI editing, publishing, and paid plans. This policy explains what we collect and why. The short version: projects you create in the desktop app live on your computer, but several features copy data to our servers and providers: cloud workspaces, sync and managed Git, publishing and previews, AI requests, your own AI keys, deploy connections, project environment variables and CMS credentials. The sections below say what goes where.
Who we are
The controller of your personal data is Federico Valla, trading as Software co / GA (Generally Available™), a sole trader, registered in the Czech Trade Register under number 19936176, at Revoluční 2137/8b, 110 00 Praha 1 - Nové Město, Czech Republic. Contact: help@plyed.co.
What we collect
- Account data. When you sign in we receive your email address, name, and chosen username, and the answers you give when you sign up (what you do, what you are building, how you heard of us). Authentication is handled by Clerk on our behalf.
- Payment data. Purchases are processed by Polar as merchant of record — your card details never reach our systems. We store your plan, billing period, and purchased credit balance.
- AI usage. When you use AI editing, your prompts and the relevant parts of your project files are sent through our backend to the AI model you selected (via Vercel AI Gateway to providers such as Anthropic, OpenAI, Google, Moonshot and other inference hosts the gateway routes to, for example Together). We record token counts and cost to enforce plan quotas; these request records are deleted after 30 days. When the agent works on your computer, we do not keep your prompts, the model's responses, or your file contents. The model providers that serve a request have their own retention and training policies, which we do not control.
- Agent traces. To see where the AI agent is slow or fails, we record the structure of each agent run: which model and tools were used, token counts, timings, errors, your user id, and the chat session it belongs to. Traces contain no prompts, model responses, tool inputs or outputs, or file contents. They are processed by Langfuse, hosted in the EU, and kept for up to 180 days; when your account is deleted we also ask Langfuse to delete your traces.
- Cloud conversations. When you run the agent in the cloud instead of on your computer, your project is copied to a cloud workspace (sandboxes by E2B, git hosting by Pierre) so the agent can work on it, and the conversation — your messages and the agent's replies and steps — is stored so you can follow it from any device. Conversation records are deleted 90 days after a conversation ends, or when you delete your account. The Git history of the project in managed Git stays until the repository is deleted.
- Voice dictation. When you activate voice dictation, microphone audio and the context around your chat cursor are sent to Wispr Flow to transcribe your speech. We record the amount of audio sent and its cost to apply it to the same AI credit balance used by editing models; we do not store the audio. Plyed does not record your microphone continuously.
- Published sites. Publishing uploads your site's built files to our hosting (Cloudflare) and makes them publicly available at your chosen subdomain until you unpublish.
- Error reports. The app sends crash and error reports so we can fix problems: the error message and stack trace, where in the app it happened, the app version and platform, your user id if signed in, an identifier for the open project and a one-way hash of its folder path, the starter template and its version, and the last lines of the project's local dev server log. Credentials in that log, home-folder names and email addresses are removed before a report is stored. Reports from the web dashboard carry no user id. Error details are copied into our issue tracker (Linear) and, for automated fixes, to GitHub. Reports are kept for 30 days; grouped error summaries for 90 days after the error was last seen. The copies in Linear and GitHub stay until we close the issue.
- Downloads & installs. We count app downloads. The desktop app sends a periodic anonymous activity ping with random install and session identifiers plus the app version, so we can count installs, sessions, and approximate currently active installs. These identifiers are generated on your machine and are not linked to your account by this ping. Sessions are kept for 90 days and installs for 180 days after they were last seen; download events are kept for 365 days. (Usage analytics, below, do link the install id to your account once you sign in.)
- Usage analytics. To learn which parts of Plyed are used and where it is slow, the desktop app and the web dashboard send structure-only events: which screens and panels you open, how long each is open (active and idle time), counts of edits, AI turns and publishes, the names of features you use, the app version, your country (from the network edge), a random install id and, when you are signed in, your account id. We never collect prompts, file contents, file names, paths, page URLs that contain ids, IP addresses or email addresses in these events. Raw events are kept for up to about 7 months; daily aggregates are aggregated, carry no account id, and have no end date. You can turn this off in the app under Account, Privacy & diagnostics (on the web: /app/account); nothing is sent once it is off. Your raw events and install identity are deleted with your account (the aggregates, and an archive copy kept without user ids, are not). They are processed on Cloudflare Workers, Queues and R2 (EU jurisdiction) and stored in PlanetScale Postgres (eu-central-1).
- Marketing site. plyed.co records page views and clicks on download, with the page path, the referring site's domain or the campaign tags in the link (utm_source, utm_medium, utm_campaign, utm_content), and your device type. Completing a download on api.plyed.app may record the same campaign tags with the release version. It sets no cookies (campaign tags are remembered only for the open browser tab), and these records are kept for 180 days.
- Documentation site. docs.plyed.co records page views, the page you came from on the same site, the referring site's domain, campaign tags (utm_source, utm_medium, utm_campaign, utm_content), time spent, scroll depth, which sections you reached, clicks on outbound links and downloads, code copies, and the number of results of a search (not the words). Your country and region, device type, browser family and language are derived from the request; your IP address and user agent are used in memory and not stored. These analytics set no cookies and keep no identifier on your device: a random id lasts only while the page is open. Records are kept for about 90 days. To opt out, use "Analytics" at the bottom of any docs page, which stores one setting in your browser. Nothing is sent if your browser sends Global Privacy Control or Do Not Track.
- Feedback. The feedback form stores your message, the page you sent it from, and your email address if you leave one. It is copied into our issue tracker (Linear), with your address, so we can reply. Feedback is kept for 180 days; the copy in Linear stays until we close the issue.
- Prompt bundle. Each account receives the app's instructions with an account-specific identifier on the last line, and we record which account fetched which identifier (at most once a day, kept for 90 days) so that a leak of those instructions can be traced.
- Marketing email. If you opt in to launch news or product updates, your email address and consent are synced to Mailchimp, and we send a confirmation email through Mailchimp Transactional. We never subscribe anyone without their explicit consent; you can unsubscribe at any time.
- Fraud prevention. If you leave with a payment dispute open, or after we closed your account for breaking the Terms, we may keep your email address (or a hash of it), the dispute and the reason, and refuse a new account until it is settled (Terms, section 15).
- Abuse protection. To rate-limit requests we briefly keep your IP address or user id in counters that are deleted after two days.
What we hold on our servers, and what stays on your machine
We hold on our servers: your account and plan records; your own AI provider keys (BYOK), deploy tokens for your own hosting accounts, project environment variables and CMS credentials, each stored encrypted with a key we control; copies of your project code in managed Git and in cloud workspaces when you sync or run the agent in the cloud; cloud conversations; and the files of sites you publish. Your AI keys are removed after 30 days on the Free plan or 90 days unused.
Stays on your computer: projects you create in the desktop app until you sync or run them in the cloud, local settings, and integration tokens kept in your system keychain (for example Figma). Pushing a project to GitHub sends it to your own GitHub account under your credentials.
Service providers
We rely on: Clerk (authentication), Vercel (backend hosting), content.software (documentation-site analytics and the Terms text, run on Cloudflare), PlanetScale (database), Cloudflare (site publishing and delivery, usage-analytics ingest, cloud orchestration), Vercel AI Gateway with the model providers listed above (AI requests), Wispr Flow (voice dictation), E2B and Pierre (cloud workspaces and managed Git), Langfuse (agent traces, EU), Linear (issue tracking for error reports and feedback), GitHub (automated fixes for error reports), Anthropic (automated error investigation through GitHub Actions), Mailchimp and Mailchimp Transactional (marketing email and confirmations), and Discord (operational alerts to our staff). Where these handle your personal data for us, they are our sub-processors for section 16 of the Terms: Clerk, Vercel, PlanetScale, Cloudflare, Vercel AI Gateway and the inference hosts it routes to, Wispr Flow, E2B, Pierre, Langfuse, Linear, GitHub, Anthropic, Mailchimp and Discord. Polar is the merchant of record for paid plans and credit packs and acts as an independent seller under its own terms and privacy policy; it is not our sub-processor. We send each provider only what its function needs, but we do not control what the provider then does under its own terms.
Retention & deletion
Account, plan, and usage records are kept while your account is active. Other records are kept for the periods stated above. To delete your account and associated data, contact us and we will remove it within 30 days; published sites are taken down when you unpublish them or on account deletion. Payment records are kept in anonymized form for our accounts. Agent traces are deleted when your account is deleted and otherwise expire after 180 days. Copies held by providers (for example Polar, Linear, GitHub and AI providers) follow their own retention.
Your rights and transfers
Under the GDPR you may ask for access to your personal data and for its correction, deletion, restriction or portability, and object to processing; where processing rests on consent you can withdraw it at any time. Write to help@plyed.co. You may also complain to the Czech data protection authority (Úřad pro ochranu osobních údajů, uoou.gov.cz) or to the authority where you live. Some providers are outside the EEA; transfers to them rely on an adequacy decision, standard contractual clauses or another transfer mechanism GDPR allows.
Cookies: api.plyed.app and Clerk set the cookies needed to keep you signed in. A private cloud preview sets a session cookie on its own preview address so only you can open it. plyed.co and docs.plyed.co set none.
Contact
Questions or requests: help@plyed.co.
See also the Terms of Use.