Privacy notice
This notice covers the Gradara desktop app, the Gradara AI service, and its sign-in page, operated by Virtu Services LLC, Wisconsin, USA ("we"). Questions or requests: support@virtu-services.us.
The short version
- Your models, simulations, and results stay on your computer.
- Apart from update checks, nothing is sent anywhere unless you use an AI feature or personal features. The simulation engine is built into the app and works offline.
- Personal features and Improve Gradara use GitHub, and what you request there is public.
- The Gradara AI service does not store or log your prompts, models, equations, or AI responses. Our AI provider, Anthropic, may keep them briefly for abuse and safety monitoring under its terms.
- We keep what accounts and billing need: your email, credit balance, purchases, and request counts.
- No analytics, advertising, or tracking, in the app or on this website. We do not sell or share your personal information.
The desktop app
Models, simulation runs, results, exports, your AI block library, and your AI proposals and results discussions (a discussion is deleted with its run) are saved in a data folder on your computer (Settings shows its location). Simulations run locally. Your own API keys, your Gradara AI sign-in, and a GitHub token for personal features, if you save one, are stored in the operating system keychain.
The app connects to the internet only to check GitHub for updates (at launch and every few hours; GitHub sees your IP address and the app version), to download an optional engine of your own if you choose one in Settings, to send AI requests when you ask for them, to use GitHub for personal features if you set them up (see below), and to open links you click.
AI requests
An AI request contains your description and the model context the task needs, for example the component you are refining, the block whose symbol you ask the AI to draw (its name, description, symbol, and terminals, not its equations), the block catalog for a model build, or a custom block's equations when you ask the AI to write its C code (C for library blocks is generated on your computer). Editing, discussing, or diagnosing the open model sends that model's blocks, parameters, equations, and connections without its layout, the names and IDs of selected blocks, and the block catalog; refining a proposal also sends your earlier request and the changes that proposal listed; a Discuss model question also sends up to four earlier questions and answers from that model's thread; diagnosing a failed run also sends the problems you ask about, that run's generated Modelica source, and the solver's messages. It does not include unrelated models or files.
Explaining results sends your question, a summary of the runs on show that the app computes on your computer (statistics, events, a short outline of each signal, the differences between runs and their parameters, solver warnings, and signal names), the model without its layout, and the earlier questions and answers of that discussion. Your recorded samples and CSV files are never sent.
With your own OpenAI or Anthropic key, the request goes directly from your computer to that provider under your account and their terms. With Gradara AI, the request goes to our service, which forwards it to Anthropic and returns the result. Our service processes the content in memory only and does not write it to disk, logs, or its database. Anthropic processes it under its commercial API terms, which do not allow training on it, and may keep it for a limited period for abuse and safety monitoring.
Personal features
Personal features are optional. If you save a GitHub token, it stays in your keychain and is sent only to GitHub's API. Your feature requests run in the GitHub repository you choose, and that repository's own Anthropic account pays for them; no Gradara AI credits are used and our service is not involved. Requests, the generated code, build reports, and a draft pull request are public on GitHub. The app downloads finished features from that repository's releases and installs them only if their signature matches a key you trust.
Improve Gradara opens a public GitHub issue form in your browser, filled in with your request, the reason the app gave, the app version, and your platform. GitHub receives these when the page opens. It never includes your model or files.
Signing in
The sign-in page at api.gradara.app loads Google's Firebase Authentication scripts from Google servers, which handle sign-in with Google or an email link. Google receives your IP address, browser details, and email under its own policies. We never see passwords.
To stop abuse, the service limits how often one IP address can start a sign-in. It holds IP addresses for this only in memory, for about a minute, and never writes them to disk or logs.
What Gradara AI keeps
| Record | Contents | Kept |
|---|---|---|
| Account | Email, sign-in provider user id, credit balance, and the version of the Terms you accepted and when | Until you delete your account; after deletion only an internal number, dates, and the accepted Terms version remain |
| Purchases and credit ledger | Credits added, used, refunded, or reversed, with dates and payment references (Stripe checkout and payment ids) | Kept for accounting. After deletion they stay under an internal account number, without your email or sign-in id |
| Usage | Task type, AI model name, token counts, latency, success, a short error code, the operation id, and the time | About 13 months |
| Operation counters | Operation id, kind, number of calls, credits charged, and for edits and fixes which priced parts were charged (for example "block:1") | 7 days |
| Sign-ins | A one-way hash of each computer's token, the computer's label, when it was created, the day it was last used, and when it was revoked | Until revoked, then 30 days |
| Sign-in codes | A one-way hash of the device code, the short code you approve, the computer's label, and its status | One day after they expire |
| Deleted accounts | Keyed one-way hashes of the sign-in id and email of a deleted account, so welcome credits are granted once per person. They cannot be turned back into the email | Kept while the service runs |
| Payment events | Stripe event ids, so a payment or refund is never applied twice | 90 days |
Server logs contain only the request type, status, timing, and a random request id. We also turn off our hosting platform's request logs, so our server logs do not contain IP addresses. Firebase and Stripe see your IP address under their own policies.
Service providers
- Google Cloud hosts the service and database in the United States (region us-central1).
- Firebase Authentication (Google) handles sign-in with Google or an email link.
- Stripe processes payments, tax, and receipts. We never receive card details.
- Anthropic is our AI model provider. It processes request content to produce a result, does not use it for training under its commercial API terms, and may keep it for a limited period for abuse and safety monitoring.
- GitHub hosts downloads, answers update checks, and, if you use personal features or Improve Gradara, runs the workshop and hosts the public requests, code, issues, and features.
- Firebase Hosting serves this website. We add no cookies or analytics to it.
Where data is processed
We are based in the United States, and Gradara AI stores its records in the United States. If you use it from elsewhere, your data is transferred to and processed in the United States, and our service providers may process it in other countries under their own safeguards.
Your choices and rights
- Delete your Gradara AI account from Settings → AI in the app. This erases your email, sign-in id, and usage records and revokes all sign-ins. Remaining credits are forfeited; to get unused purchased credits refunded (within 14 days of purchase, see the Terms), ask us before deleting. The purchase and credit ledger stays under an internal account number for accounting, and Stripe keeps payment records as the law requires.
- Export your account data (account, purchases, usage, devices) by asking us, or through the service's export endpoint.
- Sign out revokes access for that computer only.
- No sale or sharing. We do not sell or share personal information, as those terms are defined in the California Consumer Privacy Act, and we do not use it for advertising.
- Depending on where you live, you may have additional rights to access, correct, or delete personal data, or to complain to a data protection authority. Contact us and we will respond within the time the law requires.
Children
Gradara AI is not directed to children under 16, and we do not knowingly collect their data.
Changes
We will update this page when what we collect or who processes it changes, and note the date above.