Privacy
Counsel reads one thing: your Google Calendar, and only to read. Most of what it holds is not about you — it is about the people you meet, who never signed up for anything. This page says what is stored, who else sees it, and what happens when you ask for it to go.
Who this is
Counsel is made by TwelfthKey (OPC) Private Limited, an Indian company registered at 6/1704 DB Ozone, Ketkipada, Dahisar East, Mumbai 400068, Maharashtra, India. CIN U70200MH2026OPC465581, GSTIN 27AAMCT6921E1Z5.
For your own account details we are the data fiduciary. For what Counsel reads about your clients, you are the fiduciary and we process it on your instructions — see the data processing agreement.
What Counsel asks Google for
Two consents, deliberately separate. Signing in asks only for openid, email and profile — enough to know who you are. Connecting a calendar is a second, later request for calendar.readonly.
Counsel never asks for access to your email. Not Gmail, not metadata, not in any version of this. It also never writes to your calendar: the only scope it holds is read-only, so it cannot create, change or delete an event even by mistake.
What Counsel reads from a calendar
Only events with at least one attendee other than you. Solo blocks, focus time, out-of-office and Google’s own working-location entries are skipped entirely — they have no counterparty, so there is no contact to record. From the rest it keeps:
- The start time and, where the event has one, how long it ran.
- The event title as written in your calendar.
- The email address, display name and response status of everyone invited.
- Whether you accepted, declined or left it tentative.
Not the description, not attachments, not conferencing links, not location, and not any other calendar you have access to but did not connect.
What Counsel works out from it
The point of the product. From those events it derives who your clients are — by grouping the domains and addresses you meet repeatedly — how often you normally speak to each of them, and when a relationship has gone quieter than its own usual rhythm. It also holds what you type in yourself: commitments, notes and reminders.
Free-mail domains such as gmail.com are never treated as a client on their own, because one of them would otherwise become a single fictitious client containing every personal contact you have ever met.
What is stored, and where
- Your Google account identifier, email address and name.
- A refresh token, encrypted with AES-256-GCM under a key held separately from everything else. It is never shown in the app, never written to logs, and never included in an export.
- A random token, kept only as an HMAC-SHA256 hash, in a cookie your browser will not let scripts read. Sessions last 30 days, and signing out revokes them immediately.
- The meetings above, the clients derived from them, and the cadence figures.
- Commitments, notes, reminders and your billing details.
- An audit log of significant actions, and a ledger of every model call, so a figure can be traced back to what produced it.
All of it lives in a Postgres database run by Neon, hosted in Singapore (ap-southeast-1), with the application running in the same region. Access is enforced at the database itself: row-level security means a query without an account context returns nothing at all, rather than everything.
Who else sees it
Named, with what each one actually receives. Nobody else is sent anything.
- Identity and the calendar itself. Counsel reads; it never writes.
- Stores everything above, in Singapore.
- Runs the application and serves every page, so every request passes through it. Functions run in Singapore.
- AI responses and existing automated writing, with the relevant question, conversation and authorised context.
- When an OpenAI model is selected for a paid AI response: the question, relevant conversation and authorised working context.
- For eligible public Counsel Chat requests, processes the submitted prompt and bounded recent conversation through hosted inference. Guest requests do not include account files or private client context.
- May process eligible public Counsel AI requests if independently configured and enabled as inference hosts; private client files are not sent through the public guest path.
- May process eligible public Chat requests on separately enabled unpaid inference routes, subject to Google’s provider data-use terms.
- Sends the Monday brief and the two payment emails. It receives the recipient address and the message, which for the brief includes client names and commitment text.
- Payments. It receives your name, email and payment details. Counsel never sees a card number: the payment sheet is Razorpay’s own, and only a signed reference comes back.
- Calls a single scheduling endpoint every few minutes. It is sent no personal data at all.
Public Chat without an account
Opening Counsel Chat does not require sign-in. When you submit a public question, Counsel may send that question and bounded recent chat text to an external AI inference service to generate a response. Do not submit passwords, confidential client records or other sensitive information to public Chat. Provider information is listed in the processing section above. Guest prompts do not grant access to account-only Work features.
What reaches AI providers
Paid AI responses can send your question, relevant conversation history, selected files and authorised client or Foundation context to the selected provider. Choosing an OpenAI model sends this context to OpenAI; choosing a Claude model sends it to Anthropic. Role-specific AI routing remains separate from the general AI model picker.
Existing automated writing, such as meeting preparation and the Monday brief, continues through its configured provider. Meeting preparation can include meeting titles, attendees and client email addresses; a brief can include client names and commitment text. Local knowledge answers do not call an AI model, and selecting a model does not give Free accounts paid AI access.
OpenAI requests from the model picker use the Responses API with storage disabled. This does not promise zero provider retention: provider abuse monitoring and account-specific data controls can still apply. See OpenAI API data controls and Anthropic privacy information.
Google API Services User Data Policy
Counsel’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.
In plain terms: Google Calendar data is used only to provide and improve the features described here. It is not sold, not used for advertising, not used to build profiles for anyone other than you, and no human at TwelfthKey reads it — except where you have asked for support and given permission, or where the law requires it.
How long it is kept
Until you delete it. Counsel does not currently prune old meetings automatically on any plan — what it has read, it keeps until the account goes. If that changes, this page changes with it.
Two things outlive the account, and both are deliberate. Tax invoices are kept for 72 months because Indian GST law requires it; the account link is severed, so what remains is the document rather than a person. And backups held by Neon roll off on their own schedule rather than the moment you press delete.
Deleting everything
Settings → delete everything. It is typed-confirmation gated and it really does delete. When you do it, Counsel:
- Tells Google to revoke the refresh token, so Counsel stops appearing among the apps with access to your calendar rather than leaving you to tidy up.
- And with it every seat, identity, session, calendar connection, meeting, client, commitment, note, reminder, brief, meeting prep, audit entry, model-call ledger row, subscription and payment event.
- With the account link cut. GST requires 72 months, and your asking to be deleted does not change that.
There is no soft delete and no recovery window. Export first if you want a copy.
Taking a copy with you
Settings → download everything, on every plan, always, whatever the state of your billing. It is one JSON file containing your account, seats, clients and how they were identified, every meeting read from your calendar, your commitments, your notes and reminders, the meeting prep and the briefs Counsel has written, what you have told it about your practice, your spaces and every message in them, your invoices and billing details, your calendar connections without the credential, the audit log and the model-call ledger.
The one thing it leaves out is your Google credential, which is a key to your calendar rather than anything about you. Everything else Counsel holds about you is in the file.
Your clients, who never signed up
Most of what Counsel holds is about people who have no relationship with us at all. If one of them asks you to erase what you hold about them, you can do it yourself — removing a client stops it matching new meetings, and deleting your account removes everything. If you need something narrower than either, write to us and we will do it.
Questions, and complaints
Write to privacy@twelfthkey.com. Under the Digital Personal Data Protection Act, 2023 and the Information Technology (Reasonable Security Practices) Rules, that address reaches our Grievance Officer:
- Aditya Anil Mayekar
- privacy@twelfthkey.com
- 6/1704 DB Ozone, Ketkipada, Dahisar East, Mumbai 400068, Maharashtra, India
- Acknowledged within 48 hours, resolved within 30 days.
If we cannot resolve it, you may complain to the Data Protection Board of India.
Age and identity checks
Counsel does not collect an age declaration, identity document, selfie or guardian invitation as a condition of access. The former verification and separate teen enrollment services have been retired. Sign-in and account security still apply.
Removing the verification service does not automatically erase historical enrollment records or records previously processed by an external identity provider. For access or deletion requests, contact privacy@twelfthkey.com. Children should avoid sharing personal information and seek guidance from a parent or trusted adult.
Changes
When this page changes materially, the date at the top changes and account holders are told by email before it takes effect. It is not changed quietly.