Malytics

Privacy policy

Most of this policy is about the data we do not have, because of how the product is built. The parts where data does reach a server are set out specifically, including the one place your own rows can leave the browser.

Last updated 2026-11-04. Contact: [email protected].

The short version

What stays in your browser

Every file you import — CSV, TSV, JSON — is read by the page and stored in your browser's own IndexedDB, the same place a web application keeps your drafts. Queries, transforms, cleaning, charts, statistics and forecasts all run as JavaScript in that tab.

There is no upload step because there is no server-side copy to upload to. Clear your browser's site data and the dataset is gone; nobody has to be asked to delete it. This also means we cannot recover it for you.

What we store, and why

Your account

If you sign in, an account record is created on our behalf by Supabase, which hosts our database and authentication. It holds your email address, a display name and avatar URL where your sign-in provider gives them, which provider you used, your plan tier, and the dates the record was created and last changed. If you sign in with Google or GitHub, we receive those details from them; we never see your password for those services.

You can use Malytics without an account. Signing in is what makes saving, syncing and paid features possible.

Dashboards you save

Saving a dashboard stores its document: the layout, which charts and tiles exist, which columns and measures they refer to, and any text you have typed into it. It refers to your datasets by name. It does not contain your rows — those stay in your browser — so a dashboard opened on a machine without the data shows its structure and empty states.

The one way your rows reach a file is Export with data, which deliberately embeds them so the dashboard opens for someone who does not have the dataset. That produces a download on your machine. It is not sent to us.

Billing

Paid plans are handled by Stripe. Card details are entered on Stripe's own pages and never reach us or our servers — we store an invoice record: amount, currency, status, dates and Stripe's identifiers, so your billing history can be shown to you.

Email

We record which email addresses have consented to hear from us, which messages were sent, and whether they were delivered, opened or bounced. Every message carries an unsubscribe link, and unsubscribing is honoured for all non-essential email. Messages about your account itself — a receipt, a password reset, a notice of change — are sent regardless, because they are part of providing the service.

Usage and analytics

Two things measure use, and both are off until you allow them.

Both sit behind Google Consent Mode, which this site sets to denied before the analytics script is given any chance to run — not after. Until you choose otherwise, analytics and marketing storage are denied. You can change that decision at any time from the privacy controls in the app, and changing it takes effect immediately.

Abuse prevention

Cloudflare Turnstile protects the AI proxy and the URL-reading feature from automated abuse. It is a privacy-preserving alternative to a CAPTCHA and does not track you across sites.

Hosting

The site is served by Cloudflare Pages, and our database and authentication are hosted by Supabase. Both keep operational logs, including IP addresses, for security and reliability. We do not use those logs to build a profile of you.

The AI assistant — the one place your data can leave

Stated exactly

When you ask the assistant a question about a loaded dataset, the request contains: your column names and types, the number of rows and columns, statistics computed over your rows (counts, ranges, averages, the most common values) for up to the first twenty columns, and the first three rows cut to their first six columns — labelled in the request itself as illustrating shape rather than as evidence. Your question goes with it. The file does not.

On a large dataset those statistics are computed from an evenly-spaced sample rather than every row, and the assistant is told to say so rather than present an estimate as exact.

You can check all of this yourself: open your browser's network tab and read the request. Because the analysis runs on your machine, the evidence is on your machine too.

Nothing is sent until you ask a question. Figures the assistant has already worked out may appear again in later turns of the same conversation.

Requests go through our proxy to the model provider, which processes them under its own terms. If that is more than you want to share, you can bring your own API key, in which case your requests go to the provider you have chosen — or you can leave the AI features alone. Everything else in Malytics works without them.

Your conversation history with the assistant is stored per account and is visible only to you.

Cookies and local storage

Malytics uses your browser's storage for things it cannot work without: your session so you stay signed in, your datasets, your preferences and your consent decision. These are not advertising cookies and are not shared with anyone. Google Analytics sets its own cookies, and only once you have allowed analytics.

What we do not do

Your rights

You can ask for a copy of what we hold about you, ask us to correct it, or ask us to delete it. Deleting your account removes your account record and the dashboards saved against it; anything still in your browser is yours to clear, and clearing your site data does it. Invoice records are kept where we are required to keep them for tax and accounting purposes.

Depending on where you live you may also have the right to object to processing, to restrict it, to receive your data in a portable form, and to complain to your national data protection authority. To exercise any of these, email [email protected].

How long we keep things

Account records and saved dashboards are kept while your account exists. Analytics records are kept in aggregate for product decisions. Email delivery records are kept so we can honour an unsubscribe and show that we did. Invoices are kept for the period the law requires.

Children

Malytics is not intended for children under 16, and we do not knowingly create accounts for them.

Changes to this policy

This policy describes how the software behaves today. When the behaviour changes, this page changes with it and the date at the top moves. Where a change materially affects what leaves your browser, we will say so rather than let the date speak for itself.

Back to Malytics