Legal
Privacy Policy
Last updated: August 16, 2026
Weckr is an AI cost and margin tracking service. This policy explains what we collect when you use useweckr.com and the Weckr SDKs, what we deliberately never collect, where the data lives, how long we keep it, which companies process it on our behalf, and how to exercise your rights. It is written to be read, not skimmed. If anything here is unclear, email hello@useweckr.com.
1. Who we are
Weckr is operated by Ghiles Asmani, based in Stockholm, Sweden. For the data described in this policy about your account and your use of the service, we are the data controller. For the request metadata your application sends about your own end users, you are the controller and we process it on your instructions (see section 5).
2. What we collect
Account data. Your email address and a password. Authentication is handled by Supabase Auth; we store a salted hash, never the password itself. If you reset your password we send a one-time link to your email.
Project data. The projects you create, their names, the wk_ API keys attached to them, the plan prices you configure, your spending cap settings, and your alert settings (thresholds, an optional Slack incoming webhook URL, an optional email address for alerts and the weekly digest).
Request metadata. For every LLM call your application logs through the SDK, one row: the userId and feature strings you pass, the model and provider, input, output and cached token counts, latency, the plan name and plan revenue you attach, and a timestamp. Cost is recomputed on our servers from the token counts and our price table; any cost figure a client sends is ignored.
Billing data. If you start a Pro trial or subscription, Stripe collects your card details on its own hosted checkout page. We never see or store the card number. We store your Stripe customer id, subscription id, subscription status, current period end, trial end and whether cancellation is scheduled, so the dashboard can show your billing state.
Alert history. When a velocity or margin alert fires we record which project, which user id, the metric, and when, so the Alerts page can show history and so we do not send the same alert repeatedly.
Server logs and analytics. Our hosting provider keeps standard request logs (IP address, user agent, path, status, timing) for a limited time for security and debugging. Website traffic is measured with Vercel Web Analytics and Speed Insights, which are cookieless and aggregate. Our own uptime checks record only that the API and database responded, and how fast.
3. What we never collect
- The text of your prompts.
- The text of the model’s responses.
- Your OpenAI, Anthropic, Google or Moonshot API keys. The SDK wraps the client you already hold; your provider key never leaves your process.
- Any personal data about your end users beyond the
userIdstring you choose to send. The API rejects identifiers that look like an email address or a card number, so a raw email cannot be logged as a user id by mistake.
This is architectural, not just policy. The SDK is open source under the MIT licence, so you can read exactly which fields it sends. Both SDKs and the log endpoint are also designed to fail open: if Weckr is unreachable, your model calls proceed and the log is simply dropped.
4. How we use it, and on what legal basis
- To run the service you signed up for (performance of a contract): authenticating you, storing your projects and request metadata, computing cost and margin per user and per feature, enforcing your spending caps, showing the dashboard, and billing Pro subscriptions.
- To send the emails the service depends on (contract): password reset links, a confirmation when a Pro trial starts or a subscription changes, and the alerts you configure. Alerts and the Monday digest only go out if you turn them on in your project settings.
- To keep the service secure and working (legitimate interest): rate limiting, abuse detection, uptime monitoring, and debugging from server logs.
- To understand how the website is used (legitimate interest): aggregate, cookieless page analytics. No profiling, no cross-site tracking.
We do not sell your data, we do not share it with advertisers, and we do not use your request metadata to train models or to build anything other than your own dashboard.
5. Your end users
The userId you send is yours to choose. We recommend a pseudonymous identifier such as your internal user id rather than anything a human could read. Under data protection law you are the controller of that identifier and we are your processor: we store it, join it to cost figures, and return it to you in the dashboard, and we do nothing else with it. You are responsible for disclosing this processing in your own privacy policy. If you need a signed data processing agreement, email us and we will provide one.
6. Where the data lives
The database and authentication run on Supabase in an EU region. The application and its API functions run on Vercel in the Stockholm region. Every database table has row level security enabled, so a signed-in user can only read rows belonging to projects they own, and the SDK endpoints reach data only through functions scoped to the API key that called them.
7. Who processes it for us
These are the only companies that touch your data, and only for the stated purpose:
- Supabase (EU): database and authentication.
- Vercel (Stockholm region for compute): hosting, serverless functions, cookieless web analytics and performance insights.
- Stripe: payment processing for Pro. Card data goes directly to Stripe.
- Resend: sending transactional email (password resets, billing confirmations, alerts, the weekly digest).
- Slack: only if you paste an incoming webhook URL into your alert settings. Alerts are then posted to the channel you chose; we hold no other Slack access.
We will update this list before adding a new processor.
8. How long we keep it
- Request metadata and alert history are kept for as long as the project exists. Deleting a project from the dashboard removes its request rows and alert history immediately, in the same transaction.
- Account, project settings and billing records are kept while your account is open. When you ask us to delete your account we remove them within 30 days, except records we must keep for tax and accounting (Stripe invoices) for the period the law requires.
- Server logs are retained by our hosting provider for a short rolling window and then discarded.
9. Cookies
We set one cookie: the Supabase Auth session cookie that keeps you signed in as you move between dashboard pages. It is strictly necessary and exists only for that. Vercel Web Analytics is cookieless. Stripe Checkout runs on Stripe’s own domain, so any Stripe cookies are set there, not by us. Because there are no advertising or tracking cookies, there is no consent banner to click.
10. Security
API keys are 128-bit random values that you can rotate from the dashboard at any time. Cost is recomputed server side so a client cannot forge its own figures. Secrets are held in the hosting provider’s environment, not in code or the repository. The SDK repository holds the OpenSSF Best Practices badge and publishes a Scorecard result. If you find a vulnerability, please report it to hello@useweckr.com; we will acknowledge it and keep you informed.
11. Your rights
Wherever you are, you can ask us what data we hold about you, ask for it to be corrected, ask for a copy in a portable format, ask us to delete it, or object to a use you disagree with. If you are in the EU or UK these are rights under GDPR; we honour them for everyone. Email hello@useweckr.com from the address on your account and we will respond within 30 days. You also have the right to complain to your local supervisory authority; in Sweden that is the Swedish Authority for Privacy Protection (IMY).
12. Deleting your data
You can delete any project yourself from dashboard settings; its request rows and alert history go with it immediately. To close your account entirely, email hello@useweckr.com from your account address. We will cancel any active subscription, delete your account and its data within 30 days, and confirm when it is done.
13. Children
Weckr is a developer tool for businesses and is not directed at children. We do not knowingly collect data from anyone under 16.
14. Changes to this policy
When we change this policy we update the date at the top. If a change materially affects what we collect or how we use it, we will also tell account holders by email before it takes effect.
15. Contact
Ghiles Asmani, Weckr, Stockholm, Sweden. hello@useweckr.com.