Privacy Policy

Nested List · Last updated 21 October 2026

Nested List is an outliner for notes and plans. It is operated by Sergei Vinderskykh (“we”, “us”), an individual. This policy explains what the service stores, where it is kept, who else touches it, and how to get it back or delete it.

Questions or data requests: support@nestedlist.com.

What we store

Payment details are entered directly into checkout run by Stripe and Onelink, not into Nested List. They may ask for billing information needed to process a Premium purchase. We receive subscription status, invoice and payment amounts, refund status, and provider identifiers, but not your full card details.

Where it is stored

Nested List is local-first: a full copy of your outline lives in your own browser's storage on each device you use, and works offline. When you are signed in, it is also stored in the cloud so your devices stay in sync:

Who else processes it

These are all the third parties involved, and what each one receives. The features that send content off your device are described one by one in the next section.

ServiceWhat it receives
Supabase Your account record and your outline content — it hosts the database, handles sign-in, and runs Nested List's server. What the features below keep on our server (the search index, picture descriptions, screenshot readings, saved page copies) is kept here too.
Cloudflare Serves the website, and stores your attachment files and the cover pictures of saved page copies. While the sign-in page is open, Cloudflare Turnstile checks that a person, not a bot, is about to create an account or sign in with an email address; it looks at your browser and connection for that, never at your notes.
OpenAI The AI for search by meaning and picture descriptions, while Allow sending to AI models is on. It receives the text or pictures described below, never your account identifier.
Google Sign-in, if you choose “Continue with Google”, the calendar features described below: showing today's events on the timeline (read-only), and adding an event you choose to your calendar, sending an email you write from your own Gmail, and suggesting people from your Google contacts as you type who it goes to. For Drive files you choose to link, Google receives requests for file details and preview images. Planned folder syncing is described separately below and is not available yet. These integrations are used only if you opt in. Also Gemini, by default the AI for every Smart paste feature (chats, recognising a paste, screenshots, calendar events, link titles and page summaries) and for next-row suggestions, while Allow sending to AI models is on. It receives the text, pictures and rows described below, never your account identifier.
FxTwitter, VxTwitter Independent services that return a public post on X and its thread. For X threads they receive a post's number and its author's handle, from our server — never your IP address, your account or the link you pasted.
X (Twitter) For X threads, its embed services get the same post number from our server as a backup, and its picture server (pbs.twimg.com) gets your browser's requests for the thread's pictures, so X sees your IP address.
Websites you link to For link titles and saved page copies, our server fetches the page a link points to. The site sees a request from our server, not from your device.
Resend Delivers the sign-in emails we send. It receives your email address and the email itself.
Stripe / Onelink If you buy Premium, they run checkout and subscription management, process your payment, calculate transaction taxes, and issue receipts and refunds. Onelink is the merchant of record. They receive the account and payment information needed for that transaction; Nested List receives subscription identifiers and status, not your full card details.
Sentry Crash reports, so we can fix bugs. Errors only — no session recording, no behavioural tracking, and it is configured not to attach personal information.

Features that send content off your device

Beyond keeping your outline and attachments in sync, these features send content to Nested List's server, which runs on Supabase. All of them need you to be signed in: signed out, they send nothing.

One switch for AI. Allow sending to AI models, in Settings → General, decides whether anything of yours is sent to an AI model (OpenAI or Google Gemini). It is on by default, and it belongs to your account, not to a device: turned off on one device, it is off on all of them. While it is off, nothing is sent to either AI — our server refuses any request that would reach one — and every feature in the first list below stops. Any AI feature we add later goes through the same switch.

Turning it off also deletes from our server the search index built from your notes, and the picture descriptions and screenshot readings kept there so the same picture is not read twice. Text already added to your outline, such as a picture's description, stays. Turning it back on rebuilds the search index.

While the switch is on, these features send content to an AI model:

Smart paste's suggestions that are made on your device, such as removing the timestamps from a pasted chat, send nothing and work with the switch off.

What has no switch. These involve no AI, so Allow sending to AI models does not change them. Apart from Drive's own controls, they have no switch: while you are signed in, they always work.

Before any page is fetched, tracking parameters (such as utm_) and anything after # are removed. A link that looks private is never sent at all: an address on a local network or a bare IP address, one carrying a token, key, password or signature, a one-time link such as a password reset or a confirmation, a link to a file, or one with a non-standard port.

Which AI handles each feature is a setting on our server: Google Gemini by default for every Smart paste feature and next-row suggestions; OpenAI for search by meaning and picture descriptions. We may move any of them to the other of the two; we use no other AI service. Requests to Google go through its paid API, under whose terms Google does not use them to improve its products. Requests to OpenAI are sent with OpenAI's response storage turned off.

Google Calendar

Nested List can ask Google for two separate permissions. Each is asked for only when you use the feature that needs it, and you can grant one without the other.

Gmail

You can send a row as an email from your own Gmail address. For that, Nested List asks Google for permission, separate from the calendar ones, and only when you use it: to send the email, and — in the same request, each on its own line you can untick — to see your contacts, so it can suggest who an email goes to.

Google Drive

When you choose to connect Drive and link an individual file, Nested List asks for https://www.googleapis.com/auth/drive.file. Google's Picker lets you choose which files to share with Nested List. We use that access to show the file's name, type, details and a preview image when Google provides one, and refresh them when you view the file. Nested List never changes your Drive files.

Planned folder syncing — not available yet. When a working Sync folder feature becomes available, Nested List will ask for https://www.googleapis.com/auth/drive.metadata.readonly only when you first choose to use it. Connecting Drive for individual files or signing in will not request this extra permission.

Google grants this permission to see metadata across your Drive. Nested List will sync only the folders you select and their contents, including nested folders: file and folder names, types and hierarchy. This metadata will pass through our server; the selected folder's outline will be stored on your device and synced with your Nested List account. The permission does not let us read file contents. Folder cards will show type icons; preview images will remain available for files you select individually. Further folder selections will reuse the permission while it remains valid. If you decline it, existing individual-file and Calendar connections will remain usable.

Your Google authorization

Disconnect Google, from Calendar, Drive or Email settings, revokes Nested List's Google authorization for that Google account and clears both its Calendar and Drive connections and stored credentials. Other connected Google accounts stay connected. Linked rows, your notes and cached file details remain in your outline until you remove them; they stop refreshing. Signing in with Google again may ask for consent. You can also revoke authorization yourself at myaccount.google.com/permissions.

Pause and Resume control each service separately and retain Google authorization. A cancelled or failed connection attempt does not revoke an existing Google connection.

Limited Use disclosure. Nested List's use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements. We do not use Google user data to train generalised or artificial intelligence models, we do not transfer it to others except as needed to provide these features, and we do not use it for advertising.

The use of information received from Google Workspace scopes (Google Calendar, Gmail and Google Contacts) will adhere to the Google Workspace API User Data and Developer Policy, including the Limited Use requirements. It is never used to create, train or improve a machine learning or artificial intelligence model.

What we never do

Your choices

Depending on where you live you may also have the right to access, correct, or object to our use of your data, and to complain to your local data protection authority. Write to the address above and we will help.

Keeping it and deleting it

We keep your content, plan state, and daily activity markers for as long as your account exists, because they are needed to provide and understand the service. When you delete your account, we remove the outline, attachments, activity markers, and account record from the live systems. Before deletion we create a final archive; its unique download link works for 30 days, after which the archive is automatically deleted. Anyone with that link can download the archive, so keep it private. Residual copies in encrypted operational backups age out on the same rolling 30-day schedule. Detailed product usage, AI attempt records, and crash reports are kept for up to 90 days. Daily usage aggregates are kept for up to 24 months. Account deletion removes linked usage records; anonymous historical totals may remain. Restricted payment and management audit records are retained where needed for billing and operating the service. Stripe and Onelink may retain transaction records under their own policies and legal obligations.

Security

Traffic is encrypted in transit. Your outline is isolated to your own account at the database level, so one account cannot read another's. We are a small operation and cannot promise perfect security, but we do not take shortcuts with credentials: the most sensitive thing we hold — your Google refresh token — is unreadable by any browser client, including your own.

Children

Nested List is not directed at children under 13, and we do not knowingly collect their data.

Changes

If this policy changes we will update the date at the top. Material changes affecting how your data is used will be announced in the app before they take effect.

Contact

Sergei Vinderskykh — support@nestedlist.com