---
title: Your data
description: Where the files you hand over actually go, how long they stay, who can see them, and whether any of it is used to train anything.
---

Short answers first, because this is usually a decision you are making before you
upload anything:

- **Your files stay in the one chat or task you gave them to.** Nothing is pooled.
- **They stay until you delete them.** There is no expiry date and nothing sweeps them
  up on a timer.
- **Nothing you send is used to train or improve anything.** The switch for that exists,
  it is off out of the box, and there is no process on our side reading it.
- **Your app logins are never part of what the model sees.**
- **You can delete a chat, and that takes its files with it. You cannot delete a task.**
  That last one is a real gap — see [Deleting your data](/docs/deleting-your-data).
- **A share link shows the prompt, the steps and the cost, but never the files** — see
  [Sharing results](/docs/sharing-results).

## Where a file goes

When you attach, paste or drop a file into a chat, it goes into storage belonging to that
one conversation. Every conversation has its own; there is no shared folder one run can
reach into to find another run's material. The files a run produces live in the same place.

A handed-off task differs: material you give a task is plain text only, and it is folded
into the task's instructions rather than stored as a file at all — the same asymmetry
described in [Giving it materials](/docs/giving-it-materials).

Code the agent runs to do a job runs in a throwaway sandbox with no network of its own.
Anything it keeps has to be written into the run's own storage deliberately; the sandbox
is gone when the step ends.

## How long it stays

Until you delete it. That is the whole answer.

There is no retention period, no automatic clean-up job and no expiry on uploads or
outputs. A file you attached in March is still there in December, and a deliverable from a
finished task is still downloadable a year later.

We would rather write that down than imply a tidy-up that does not happen. If it matters
that something is gone, you have to remove it — see
[Deleting your data](/docs/deleting-your-data) for what that reaches.

## Who can see it

Three things are true here, and they are mechanisms rather than promises:

- **Every read is scoped to your account.** Not filtered afterwards — the lookup itself
  can only return your rows. Asking for a file on a run that isn't yours gets a plain
  *not found* rather than "not allowed", so even the existence of someone else's run
  isn't observable.
- **Searching your own reference material fails closed.** The search is scoped by an
  identifier derived on our side from the verified owner of that conversation — never
  something the model or your browser can set. If it is missing or malformed the search
  is **refused**; it does not fall back to searching everything.
- **Connected apps are looked up one account at a time.** A malformed result fails the
  whole request rather than being read as "you have no apps connected".

What we are not claiming is that no human at Else could ever look at anything. If you
turn the improvement setting on, the Privacy Policy says selected content may be
reviewed; that is exactly why the setting is off unless you choose it.

## Training

We do not use your tasks, prompts, files or results to train or improve models.

The setting is in **Settings → Money and data**, labelled *"Help improve the product
using my tasks"*, and it reads *"Off by default — your content stays yours."* It is
genuinely off when you arrive, and there is no process on our side that consumes it, so
there is nothing that can quietly start because a default changed.

Running your work is a different thing from training on it: to produce a result, the
relevant part of what you sent has to be processed. That is what the Privacy Policy
means by AI processing, and it is limited to what the job needs.

## App logins

When you connect an app by pasting a key, the form tells you: *"Your details are
encrypted and never shown to the AI."*

The second half of that is enforced rather than requested. The agent has no way to
observe your stored credentials at all — the only thing it can see is whether a given
app's tool is available on this turn, which is a fact about the switches in your composer
and says nothing about your account. It is also forbidden from describing an
authorization problem unless a real call actually returned one, and internal identifiers
are stripped out of anything it says to you.

Keys are checked when you paste them, so a bad value fails immediately rather than three
days later inside a run. More in [Connecting your apps](/docs/connecting-apps).

## The legal version

This page is the plain-language version of our
[Privacy Policy](https://elsedoes.com/privacy), which is the binding document and covers
the parts this page does not: legal bases, international transfers, your statutory rights
and how to exercise them. Where the two are read together, the policy governs.

For anything you cannot do yourself — an access request, a broader export, closing your
account — the address is **hello@elsedoes.com**.
