Privacy

What I collect, and why.

I keep this simple. This site does not run ads. It loads one third-party script, Google Analytics, described below.

Email. There is no contact form on this site. When you email me, your message sits in my inbox and nowhere else. I use it only to reply to you.

Booking a call. The calendar on my contact page is a Google Calendar appointment schedule, operated entirely by Google. It loads from Google only when you choose to open it; until then your browser sends Google nothing from that page. When you book a time, your name and email go to Google and to me - nowhere else. Google handles that data under its own privacy policy.

Analytics. I record which pages get read. Each visit logs the page path, where the visit came from, the kind of device, the country the request arrives from, and a session id that lives in your browser tab and is thrown away when you close it. This part runs on my own server. It sets no cookies and sends nothing to anyone else, and none of it identifies you by name.

Google Analytics. This site also loads Google Analytics 4. It sets cookies in your browser and sends your page views, approximate location and device details to Google, which processes them under its own privacy policy and may combine them with data from other sites you visit. That is a genuinely different arrangement from the paragraph above, which is why it is its own paragraph. You can block it with any content blocker, or by turning off third-party cookies, and the site works exactly the same.

The AI demos. Most of the products here are interactive, and the interactive part is a model call. Dozens of routes on this site take what you type into a demo and send it to OpenRouter, which passes it to whichever model vendor answers that request. Your text travels with the demo's own context: its system prompt and the sample data it runs on. Two products send more than text. FactoryLens sends up to ten downsized still frames from a clip you pick or upload: faces are masked in your browser first, the video file itself never leaves it, the stills are requested from zero-data-retention model endpoints, and this site does not store them. DocChunker sends the text of a document you upload. What OpenRouter and the model vendor do with a request once it reaches them is governed by their terms, not mine.

Keeping the live demos affordable. Each live model call counts against a daily limit, for the site, for each product and for each visitor. The per-visitor count is keyed on a salted, one-way hash of your network address, never the address itself, and those counts are deleted after seven days. When a limit is reached, the live model pauses and the demo says so.

What happens to it afterwards. I do not train anything on what you type, and I do not sell it or hand it to anyone beyond the model provider answering the call. For most demos I keep no copy at all: the request goes out, the answer comes back, and nothing is written down. The exceptions matter more than the rule, so I would rather name them.

Uploaded documents are not kept. DocChunker reads a PDF you upload in memory for that one request and then discards it: the file, its text and the result are not stored anywhere. Its text is sent to OpenRouter for extraction. The old upload page that stored files has been retired.

Products that remember you keep it private. Where a product keeps state between visits, it keeps it in a sandbox tied to a signed cookie in your browser, so nothing you do changes what another visitor sees. Azeon and Kairos delete a sandbox once it has been idle for 24 hours, and the Praxis decision ledger is deleted after three days without activity. Sagan keeps your interviews, study drafts and review decisions in a sandbox tied to a signed cookie, and a daily job deletes a sandbox after three days without activity. What you type in an interview, and your finished interviews when you ask a question across interviews, is sent through OpenRouter to the model provider (Anthropic, in the United States) to phrase the moderator's questions, code and summarise your interview, and answer your question. Sagan asks OpenRouter to use only providers that do not collect the data (data_collection: deny), and masks patient identifiers before storing or sending text. Nothing you type into Azeon is written to shared records or to its agent's memory, and it never sends email. Certinal keeps the consent receipts and breach drills you create only in your own browser; its server keeps nothing of yours beyond the site-wide AI budget count.

So please do not type anything confidential into a demo. These are independent builds on sample data, with no data-processing agreement behind them. Treat every input box on this site as public, and never paste real patient, customer or employee data into one. The terms of use say the same thing about relying on what a demo tells you.

To have your data deleted, email me at kaushal@kaushalkhodifad.com and I'll remove it.

Last updated 2026-09-28.