Privacy policy
Last updated: October 28, 2026
This policy explains what information the monthlet.ai website collects and how it is used. It covers this website, the download and update-check endpoints, the app’s daily launch record, the monthlet AI waitlist and closed beta applications, problem reports sent explicitly from the app, and the optional monthlet.ai account services (sign-in and monthlet AI). The monthlet desktop app stores your notes on your device; we do not receive them, except for content you explicitly send us through the app’s problem-report feature. The app itself is governed by its EULA, shown on first launch.
Information we collect
Waitlist. When you join the monthlet AI waitlist, we store your email address, your language preference, the time of signup, and your browser’s user-agent string. We use this only to notify you when monthlet AI becomes available and to share closely related product updates. We do not use it for anything else.
Closed beta applications. When you apply to the monthlet AI closed beta, we store your email address, your language preference, your answers to the application questions, the country estimated from your IP address, where you arrived from (the campaign label in the link, if there is one), the time you applied, and your browser’s user-agent string, and we add your email address to the monthlet AI waitlist. We use your answers only to select participants and to tell you about the official release. When you apply, we send you one confirmation email through Resend.
Download counting. When you download the app via /download, we record a one-way hash of your IP address, the date, your browser’s user-agent, where the visit came from (the referring site, or a short campaign label such as “reddit” from the link you followed), and the country estimated from your IP address. The raw IP address is never stored. On September 28, 2026, we switched to making the hash with a key that we delete at the end of each day. Once the key has been deleted and our 30-day backup period has passed, the original IP address can no longer be recovered from the hash; until then, anyone with access to the key, including us, could recover it. Hashes recorded before September 28 were made without such a key and may still be recoverable; all of them will be deleted by December 27, 2026. We use the hashes only for counting, and they are deleted automatically after 90 days. This exists only to count unique downloads per day and to see which channels and countries bring them.
Update-check counting. The monthlet app periodically contacts our update endpoint to check for new versions. When it does, we record one-way hashes of the IP address, the date, and the request’s user-agent string. The raw IP address is never stored. On September 28, 2026, we switched to making the hashes with keys that we delete at the end of each period (a day, a week, or a month). Once a key has been deleted and our 30-day backup period has passed, the original IP address can no longer be recovered from the hashes made with it; until then, anyone with access to the key, including us, could recover it. Hashes recorded before September 28 were made without such a key and may still be recoverable; all of them will be deleted by December 27, 2026. We use the hashes only for counting, and they are deleted automatically after 90 days. This exists only to count unique active installations per day, week, and month. The request also carries a per-installation identifier that the app’s update mechanism attaches on its own; we receive it but do not store or use it.
Daily launch record. Once a day, when you open the app, it sends a short anonymous record to monthlet.ai: a random identifier created for this installation, the app version, the operating system, where the app was installed from (our download or the Microsoft Store), and the fact that the app was opened that day. It does not include your notes, file names, folder or vault names, or API keys. The identifier is not linked to your monthlet.ai account. The IP address is not recorded, and the identifier is stored only as a one-way hash. We use these records only to count how many installations are used each day, week, and month, and how many are still being used over time. The records are deleted automatically after 90 days. After that, we keep only the resulting counts, such as the number of installations used each day, which contain no identifiers. This is on by default. You can turn it off in the app’s settings, and while it is off the app sends nothing. Turning it off also deletes the identifier from your device.
Problem reports. When an AI response in the app’s chat was not what you expected, you can send us the content of that exchange. It is sent only when you review the content on screen and perform the send operation yourself. A report includes your message, the AI response, the tools the AI called, the name of the AI model used, and the app version. You can optionally add a comment and an email address. We use reports only to investigate problems in monthlet and improve its quality, and for nothing else. Reports are kept until they have served that purpose, and for no longer than 12 months. If you contact us with the report ID shown after sending, we will delete that report. If we become aware that a report contains personal information about someone other than the sender, we will delete it.
Site analytics. We use Cloudflare Web Analytics, which is cookie-less and aggregate. It does not identify individual visitors. In addition, if you agree to it, we use Google Analytics to see which pages are read, how far into them people get, and where visitors came from. Nothing is sent to Google Analytics unless you agree: it is off by default, and the banner shown on your first visit is what turns it on. Advertising features, including Google Signals, are not enabled.
Cookies. This website does not use cookies for tracking unless you agree to Google Analytics. If you do, Google Analytics sets its own cookies (names beginning with _ga) to tell repeat visits apart and to keep a session together. They are not used for advertising. Separately, if you sign in to a monthlet.ai account on this website, it sets one cookie that keeps you signed in; see the account services below.
Changing your mind. Declining leaves nothing stored beyond a note of that choice, and no measurement happens. If you agreed and want to stop, clear this site’s cookies and site data in your browser; the banner will ask again on your next visit. Google also offers a browser add-on that opts you out of Google Analytics on every site.
Where your data lives
The website and its data run on Cloudflare (hosting, the waitlist database, the problem-report database, and analytics). Waitlist entries are also copied to a private Google Sheet for operational review. Downloads and app updates are served from GitHub Releases, so GitHub receives your IP address when downloading them, under its own privacy policy. If you agreed to Google Analytics, Google receives the measurement data described above, under its own privacy policy.
Storing data with these providers is a form of entrustment: we review their terms and security practices and supervise that your data is handled appropriately.
If you sign in to a monthlet.ai account, the account data and the AI usage records are also stored on Cloudflare. Sign-in codes and notices are delivered by Resend, payments are handled by Polar, and monthlet AI requests are processed by Anthropic, and some of them are also passed to TypeSafe AI to choose the model, each under its own privacy policy. If you sign in with Google, Google handles that authentication under its own privacy policy.
We do not sell your data, show ads, or share your information with anyone beyond the service providers above.
How we protect your data
We collect as little as possible to begin with, and protect what we do hold: access is limited to the operator and guarded with multi-factor authentication, and the services that store the data (Cloudflare and Google) apply access controls and encryption in transit and at rest.
Where the data is processed. Waitlist data, problem reports, and account data are stored on Cloudflare servers. The databases that hold them currently run in Cloudflare data centers in the Asia-Pacific region (we do not choose a specific country within that region), and because Cloudflare operates a global network, the data may also be processed in other countries, including the United States. The copy of waitlist entries is stored on Google servers, which may be located in the United States and other countries. Emails, payments, and monthlet AI requests are processed by Resend, Polar, Anthropic, and TypeSafe AI in the United States. We keep ourselves informed about the data-protection rules in these countries and apply the safeguards above accordingly.
Retention and your rights
Waitlist entries are kept until they have served their purpose (notifying you about monthlet AI) or until you ask us to remove yours.
Closed beta applications are kept until the selection and the thank-you for the beta are complete, or until you ask us to remove yours. The waitlist entry made at the same time is kept as described above.
Problem reports are kept until they have served their purpose (investigating the problem), and for no longer than 12 months; after that they are deleted automatically.
Account data is kept while the account exists. AI usage records contain none of your content and are kept with the account.
Under applicable law (including Japan’s Act on the Protection of Personal Information), you may ask us to disclose the personal data we hold about you or its purpose of use, correct it, delete it, stop using it, or stop providing it to third parties. Email [email protected] from the address you signed up with (or with other reasonable proof of identity), and we will respond without undue delay. If a legal exception prevents us from fulfilling a request, we will tell you why.
For problem reports, the email address is optional, so requests are matched using the report ID shown when you sent the report. Include that ID when you contact us.
The monthlet app and your notes
Your notes are plain HTML files stored locally on your device. They are never uploaded to our servers.
When you use the in-app chat with your own AI provider API key, requests go directly from your device to that provider (such as Anthropic, OpenAI, or Google) under that provider’s terms. We do not proxy, log, or store those requests, except for content you explicitly send us through the problem-report feature described above. If you use monthlet AI instead of your own key, requests pass through our server; see the next section.
monthlet.ai account and monthlet AI
These are optional services that you turn on by signing in to a monthlet.ai account from the app. Nothing in this section applies until you do. The notes on your device remain yours either way; if a subscription ends, the app keeps working with them.
Where these services are offered. monthlet AI and the monthlet.ai account services are not offered to people in the European Union, the European Economic Area, the United Kingdom, or Switzerland. We do not accept account sign-ups, trials, purchases, or closed beta applications from those regions.
Account. You sign in with your email address and a one-time code that we send to it. You can also sign in with your Google account. In that case we ask Google to share your email address and basic profile (openid, userinfo.email, userinfo.profile). What Google sends us also includes your name, profile picture, and Google account identifier, but the only one of these we keep is your email address, which Google has verified. We do not use or store your name or picture, and we never receive your Google password. If you use the same email address, signing in with Google gives you the same account as signing in with a code. We store your email address, the time you signed up and last signed in, and hashed session tokens so that the app can stay signed in. To limit abuse of the sign-in code, we also keep, for a short time, a one-way hash of the IP address that requested it. The code itself is stored only as a hash and expires within minutes. If you sign in on this website, we set a single cookie (__Host-monthlet_session) that keeps you signed in on this website for up to 7 days. It is used only for signing in, not for tracking, and signing out removes it.
Subscriptions and payments. Payments are handled by Polar, which acts as the merchant of record. Polar receives your email address and payment details under its own privacy policy. We receive the subscription’s status, its identifiers, and the product purchased, and never see your card details.
monthlet AI. When you use monthlet’s own AI service instead of your own API key, the app sends each request to our server, which forwards it to Anthropic and returns the response. Anthropic processes it under its commercial terms, which do not permit using your content to train its models. We review which models we use from time to time, based on quality and cost. These reviews stay within Anthropic’s models. If we change the company that processes your requests, or if the rate at which your usage goes down changes, we’ll let you know in advance. For some requests made while a note is open, our server also sends the last message you typed in the chat to TypeSafe AI, Inc. (United States), whose service helps decide which AI model should handle the request. Along with that message, we send only a few facts about the shape of the request: whether a note is open, whether it is empty, whether blocks are selected, whether the open note is a spreadsheet, and the length of the message. We do not send your notes, attachments, tool results, earlier messages in the conversation, your email address, or your account identifier. TypeSafe AI uses the message only to make that decision, and its privacy policy states that it does not train or fine-tune models on what it receives. Under our agreement with TypeSafe AI, it does not store that data. This happens only with monthlet AI, never when you use your own API key. We do not store the content of requests or responses. For each response we record the model tier used, the token counts, and the resulting cost, in order to meter your monthly allowance; this record contains none of the content. Separately, to compare models on quality and cost, we record for each response the model used, how long the first text took to arrive, and whether the request failed, without linking this to your account. To grant the free trial once per account and per installation, the app sends an installation identifier, and we store only a keyed one-way hash of it. That hash is kept even after the account is deleted, so that the trial cannot be repeated.
Emails we send. Sign-in codes, notices of new sign-ins, notices about your subscription, and the confirmation of a closed beta application are sent through Resend. So that you can spot sign-ins you did not make, sign-in code emails and new sign-in notices include the time of the request, its approximate location (a city and country estimated from the IP address), and the browser it came from; we do not store these details. We keep a record of each email sent (its type, the address, and whether delivery succeeded, not the content) for 30 days.
Deleting your account. Email [email protected] from the address you signed in with, and we will delete the account and the usage records. The trial hash described above is the only thing we keep.
Google account integrations
monthlet can connect to Google Sheets and Google Calendar, so that the in-app chat can read a spreadsheet you point it at, read your schedule, and add an event when you ask for one. Each connection is optional and stays off until you set it up in Settings, and you can disconnect it at any time.
What we ask for. For Sheets, read-only access to your spreadsheets (spreadsheets.readonly). For Calendar, access to your events (calendar.events) and read-only access to the list of your calendars (calendar.calendarlist.readonly), so that you can choose which calendar to work with. In both cases we also ask for your email address (openid, userinfo.email) so the app can show which account is connected. monthlet does not request permission to change your spreadsheets, and does not request access to Google Drive.
Creating calendar events. calendar.events covers writing as well as reading, and monthlet uses it to create an event when you ask for one. Every event is shown to you for approval before it is created, and nothing is written if you decline. monthlet does not modify or delete events that already exist; the app has no function that does so.
How it is handled. The authorisation is stored encrypted on your device using the operating system’s credential protection, and is never sent to our servers. Spreadsheets and calendar entries are read on your device; the contents you ask about are passed to the AI provider you configured (or, if you use monthlet AI, through our server to Anthropic), the same way as the rest of your chat. We do not log or store them. Disconnecting revokes the authorisation with Google and deletes the stored credentials from your device.
Future connectors may request access to other Google services. Each one is optional and asks for its own consent before anything is accessed.
monthlet’s use of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements.
Who operates this service
This website and monthlet are operated by t27d, an individual developer based in Japan. The operator’s legal name and address, as required to be made available under Japanese privacy law, will be provided without undue delay on request at [email protected].
Changes to this policy
If this policy changes, we will update this page and the date above. Material changes will be noted on this page.
Language
This policy is prepared in Japanese and in English. The Japanese version is the authoritative text; if the two differ, the Japanese version prevails.
Contact
Questions or requests: [email protected]