UnderGrowth
Sign in
Menu

Privacy Policy

UnderGrowth holds your private journal. This page says plainly what is stored, what leaves the app, who else can see it, and how to get rid of it. Where the honest answer is uncomfortable, it is written down anyway.

Effective 30 August 2026 · Last updated 14 October 2026


1. Who is responsible

UnderGrowth is built and run by Raghav Gandhi, an individual, not a company. He is the data controller for everything described here and can be reached at raghav@undergrowth.app.

2. What is stored

Your account

An email address, and the sign-in method you chose — either a password, which is stored only by the authentication provider and never in a form UnderGrowth can read, or a linked account from an external sign-in provider. If you typed a name when signing up it is kept alongside your account. A small profile row records when your account was created and whether you have accepted the AI notice.

That profile row also holds what you pick about yourself when you sign up — up to five kinds of person (a student, working a job, and so on) and up to five things you want to write about, chosen from fixed lists. They decide which topics and questions the app offers you, and two AI features use them as background, described in section 5. The things you want to write about can be changed later on the Explore page, which lists them as your topics, as well as in Settings.

It can also hold three smaller answers: the name you want the app to call you (filled in from the name you signed up with, if you gave one), how you like to start writing, and when you usually write. These are never sent to the AI and are used only on your own screens — the name to greet you on the home page, and how you like to start to decide which option comes first when you start a new entry. When you usually write is saved, but nothing uses it yet. You can skip any of these questions. You can change every answer except how you like to start at any time in Settings, under About you; that one is asked only when you sign up. Older accounts may also hold answers to two earlier signup questions — what you were working on, and what you were trying to get better at — asked before the current ones took their place, and stored as you typed them, up to 300 characters each.

Signing up also asks what made you want to keep a journal. That answer is not stored on your profile: if you answer it, it becomes your first journal entry, private like every entry, and you can edit or delete it the same way.

Your writing

Every journal entry you save: its text, the date you filed it under, an optional category, and any title — both one you typed and one the AI wrote, which are kept separately. Each entry’s text is stored twice, once with formatting and once as plain text, because the app needs both — and three times once you have written the entry up, because the write-up is kept as its own separate copy on the entry. Tweet drafts generated from an entry are stored on the entry, and any draft you save is stored again in a separate list.

The write-up is the prose version of an entry you built by answering questions, made when you press Write it up (section 5). It is stored on the entry, you can edit it afterwards, and your edits are saved the same way the rest of your writing is. It is not folded back into the other two copies of your text, and it is never sent as a writing sample when you draft tweets.

Entries are text only. There is no way to attach an image or a file, and no file storage exists.

Technical records

The hosting and database providers keep ordinary server logs — IP address, browser, page requested, time. The app’s own server functions additionally record that a particular account used a particular AI feature at a particular time. Those records do not contain your journal text, with one narrow exception noted in section 5.

One of those records says more than that a feature was used. If the AI declines to ask a follow-up question because it judged that what you wrote describes serious distress (section 5), the server log notes that it declined, and why. The note holds no text — nothing you wrote, and nothing the AI wrote back — but like the records above, it can be tied to your account and the time. That makes it a record that an AI judged your writing to describe serious distress, which is information about your health whether or not the AI was right.

3. Where it is stored

In a Postgres database run by Supabase, hosted on Amazon Web Services in the ap-south-1 region (Mumbai, India). The website itself is served by Vercel from its global network.

If you are reading this from outside India, your writing is stored outside your country.

4. Nothing is sold, and nothing is used to train anything

Your writing is not sold, rented, or shared with advertisers. It is not used to train any AI model by UnderGrowth, and it is not used to improve the app for anyone else. It is not read for marketing, and there is no advertising here at all.

5. The AI features, and what they send

Four features use AI: drafting tweets from an entry, naming an untitled entry, asking a follow-up question about what you have just written, and writing up an answered entry as prose. An entry's category is chosen by you, never by the AI, and so is any change to a saved draft. All four are handled by a third-party AI provider outside UnderGrowth.

Each of these runs only when you press a button. Nothing is sent while you type, and nothing is sent in the background.

What is sent when you use them:

These requests are made by UnderGrowth’s own servers, not by your browser. The provider therefore receives the text, but not your IP address, your device, or anything that identifies you personally. Its handling of that text is governed by its own terms rather than by this policy.

The one exception to “logs contain no journal text”: if the provider returns a malformed response, the resulting error message can include a short fragment — on the order of ten characters — of the AI’s reply, which is derived from your entry. That fragment would land in the server logs.

6. Who else can see your writing

No third-party analytics, advertising, or tracking product is used here. No traffic measurement, no session recording, no crash reporting, no advertising pixel. Fonts are served from this site rather than from an external font service, so opening a page does not announce your visit to anyone.

But four companies necessarily see something, because they run the infrastructure:

If you sign in with an external account rather than a password, your browser contacts that provider to complete the sign-in. Your browser contacts X or WhatsApp only if you click one of those share buttons, and only for an entry you have already made public.

And Raghav can read your entries. They are stored unencrypted, and running the service means holding database access. He does not read them, and there is no feature or process that surfaces them — but the honest statement is that he is able to, and any claim otherwise would be false.

7. Entries are private until you publish them

Every entry is private the moment it is created. New entries are saved with sharing switched off, and the database enforces that rather than the app merely respecting it: an entry can be read only by the account that wrote it, and a signed-out visitor cannot read entries at all.

An entry becomes readable by anyone else only when you switch on the Public toggle on that specific entry. After that:

8. What is kept in your browser

Two things at most. Your sign-in session, so you are not asked to log in on every page. And, if you choose a theme other than Clay in Settings, which one, so the app opens in it on that device; it never leaves your browser. That is all. There are no advertising or tracking cookies. Clearing your browser storage signs you out and puts the app back on Clay.

Signing out ends your session, but does not by itself wipe entries already loaded into that browser tab’s memory. Closing the tab does.

9. How it is protected, and the limits of that

Traffic is encrypted in transit. The database enforces per-account access rules, so one user cannot read another’s entries, and every query the app makes is additionally scoped to the signed-in account as a second line of defence. Passwords are handled by the authentication provider and are never visible to the app.

What this is not: your entries are not end-to-end encrypted, and UnderGrowth does not encrypt them itself before storing them. Anyone with administrative access to the database — which means Raghav, and Supabase as the provider — can read them. If you need writing that nobody but you can ever read, this is not the right place to put it.

10. Deleting things

One thing does not follow the entry it came from. If you save a tweet draft and later delete the entry it was generated from, the draft remains — it is stored separately and is not linked to the entry. Delete those drafts yourself, or delete your account, if you want that text gone.

Deletion removes your data from the live database. It cannot reach into the infrastructure providers’ backups or server logs, which age out on their own schedules and are outside this project’s control.

11. Your rights

You can ask what is held about you, ask for a copy, ask for corrections, or ask for everything to be erased. Most of that you can do yourself in the app — entries and drafts can be edited or deleted at any time, and the delete button in Settings removes the account outright. What you picked about yourself at signup, and the name and writing time you gave, can be changed in Settings, under About you. The things you want to write about can also be changed on the Explore page. There is no screen for two things, so correcting them means asking: how you said you like to start writing, and the answers to the two earlier signup questions that some older accounts hold. For that, and for anything else, write to raghav@undergrowth.app and it will be handled by hand. Mail to that address is forwarded by ImprovMX to Raghav’s Gmail inbox, so a request sent by email then sits in that inbox — if you would rather not do that, the delete button in Settings needs no message to anyone.

UnderGrowth is not intended for children under 13, and accounts are not knowingly created for them.

12. Changes to this policy

If what the app does changes, this page changes with it, and the date at the top moves.


Anything here unclear, or something you think is wrong? Write to raghav@undergrowth.app.