Kanbanly

Privacy Policy

What data Kanbanly stores, why it stores it, who it is shared with, and what you can ask us to do with it.

Last updated September 24, 2026

The short version

Kanbanly is a tool for organising work on boards. To work at all it needs to know who you are and to store what you write: your boards, your lists, your cards and whatever you put inside them. That is very nearly everything we keep.

We do not sell data to anyone. There is no advertising. There are no third-party trackers and no analytics tools: if you open your browser's network panel while using Kanbanly, you will not see a single call to a measurement company, because there isn't one.

What we do is written out below in detail, including the uncomfortable parts: what stays on record when you delete something, what gets sent by email, and what the people you share a board with can see.

What data we collect

We group it by the reason it exists, not by where it is stored. Nothing here is collected just in case: every group below supports a specific feature of the application.

Account data
Your email address and password — or your Google account, if you sign in that way — your name, your photo, your username and your language. This is the minimum needed to let you in, to let your teammates recognise you on a board, and to write to you in the right language.
Professional profile data
Job title, department, organisation and a short bio. These are optional, you fill them in yourself, and they exist so that people who see you in a workspace know who you are. Leave them empty and Kanbanly works just the same.
What you create inside Kanbanly
Workspaces, boards, lists, cards, descriptions, comments, checklists, labels, dates, custom fields, file attachments and, if you use the map view, the address you give a card. This is the content: it is yours, and we store it because it is exactly what you came here to store.
Activity log
Every board keeps a history of what has happened on it: who moved a card, who created it, who archived it and when. It is visible to the people with access to that board. It exists so a team can reconstruct what happened without having to ask, and it is the same information already shown on the card itself.
Notifications and their settings
Which notifications you want, by which channel, and the notifications that have been generated for you. You can turn them off by type from your account.
Subscription data
If you take out a paid plan: which plan, how much was charged, in what currency, how the charge ended up, how long the period is paid for, the card brand and its last four digits. The full card number, its expiry date and its security code NEVER reach Kanbanly; they are collected by the payment gateway on its own form.
What you write to support
The message you send, which category it falls under, and a small amount of context attached purely so we can help: your name, your email, your plan, your language and which screen you were writing from. Nothing from your boards is attached: no card titles, no teammates' names.
Technical connection data
Like any service on the internet, the servers hosting Kanbanly log the requests they receive, with the IP address and the timestamp. That log is generated and kept by the hosting provider, we do not consult it routinely, and it exists to diagnose outages and detect attacks.

What we use each piece of data for

Account data supports the session and access control: without knowing who you are, there is no way to decide which boards you may open. Content is used to show it to you and to whoever you choose, and to power the features that operate on it: search, filter, sort, export a report.

Email is used for three things and no others: confirming your account and recovering your password, telling you what is happening on your boards according to the preferences you set, and replying when you write to support. Email reports, if you switch them on, go out at the time and frequency you chose.

Subscription data is used to charge for the plan, to know how long it is paid for, and to issue the receipt. Failed-payment notices are sent because if we said nothing, the plan would lapse with no explanation.

We do no profiling, there are no automated decisions that affect you, and we do not train any model on your content.

Who can see your data

Inside Kanbanly, the content of a board is seen by the people with access to that board, and by nobody else. Who has access is decided by you when you invite them, and their level of access — admin, edit, comment or observe — determines what each of them can do. A board marked as private does not appear in searches run by people who are not in it.

This is not a promise written in a document: they are row-level security policies in the database itself. A query that forgets to filter by permissions does not return extra data, because the database does not hand it over in the first place. The Security page explains this in detail.

Your profile has fields where you decide whether they are visible and to whom. The ones you mark as private are not shown to other people, not even to workspace colleagues.

Within our own team, access to the database with administrative privileges is limited to the accounts that need it to run the service and to answer what you write to us. It is used for that, not to read boards.

The providers involved

Kanbanly does not do everything on its own. These are the third-party services that touch data, what data they touch, and what for. The list is complete: there are no others.

Supabase
Hosts the database, handles authentication and stores the files you upload. It is where almost everything lives. Passwords are held by its authentication system, encrypted; Kanbanly never sees or stores a password in clear text.
Vercel
Hosts and serves the application. It processes every request you make when opening a page, and its server logs contain the IP address you connect from.
Resend
Sends the email: confirmations, password recovery, board notifications, reports and support replies. It receives your email address and the content of the message being sent to you.
Wompi
Processes payments for the paid plans. Your card details are entered on their form and travel to them, not to us. What comes back to us is a transaction identifier, the amount, the status, the card brand and its last four digits.
Google
Only if you use it. Signing in with Google shares your email, name and profile photo from that account with us. The map view loads maps from Google Maps, which means your browser connects to Google when you open that view. And if you connect your calendar, we read and write events in your Google Calendar: that has a section of its own, “When you connect a calendar”, because it needs telling in detail.
Microsoft
Only if you use it. If you connect your Outlook calendar, we read and write events through Microsoft Graph. The same as Google and under the same rules: it is explained in “When you connect a calendar”.
Unsplash
Only if you use it. The cover-photo search queries their catalogue, and the photos you pick are loaded from their servers when displayed.

When you connect a calendar

The Planner can connect to your Google or Outlook calendar. It is optional: Kanbanly works in full without connecting either, and this section only applies to you if you connect one.

It is separate from everything else because this is not data you give us by typing it: you authorise us to read it from somewhere else. Everything this section says comes from the code and can be checked by reading it.

What we ask permission for
From Google, to view and edit events on calendars YOU OWN (“calendar.events.owned”), which is the narrowest permission that allows this: it does not reach calendars someone else has shared with you. From Microsoft, the equivalent (“Calendars.ReadWrite”). In both cases also your email and your name, and that is used only to show you which account is connected. We do not ask for access to your email, your contacts, your files, or any calendar other than your primary one.
What we read
The events on your primary calendar, and only those within the date range you are looking at in the Planner. We do not walk through your whole calendar, we do not sync it in the background, and we do not query it when you are not there.
What we write
Only what you do from Kanbanly. If you create an event from the Planner, it is created on your calendar; if you delete it from here, it is deleted. We do not modify or delete any event that you did not create from Kanbanly.
What we store
The access token and the refresh token, the email of the connected account, when the token expires and which permission you granted. Nothing else. They live in a table with row-level security — only you can read yours — and they never reach the browser: only the server uses them.
What we do NOT store
Your events. Not one. There is no copy, no cache, no table where they live: they are requested from Google or Microsoft every time you open the Planner, drawn on screen, and gone. That is why, when you disconnect the calendar, there are no events to delete: none were ever stored.
Who we share it with
Nobody beyond what it takes to make this work, and the list is short: Supabase, where the table holding the tokens lives, and Vercel, where the server that uses them to talk to Google runs. Neither one receives your events, because your events are not stored anywhere. Beyond that we do not share, transfer or disclose this data to anyone: not to other companies, not to advertisers, not to data brokers, not to other people who use Kanbanly. We do not sell it. And we do not use it — nor let anyone else use it — to train artificial-intelligence models. The only thing that would make us hand it over is a legal order compelling us to, and in that case we would tell you unless the order itself forbids it. The same applies to what reaches us when you sign in with Google — your email address, your name and your picture: they live in Supabase and nowhere else.
How we protect it
The whole path is encrypted with HTTPS, without exception: between your browser and Kanbanly, between Kanbanly and Google, and between Kanbanly and the database. The access tokens are encrypted at rest by the database infrastructure, and the table they live in has row-level security: someone else's query does not return your row, even if the code asks for it wrongly. They never reach the browser — only the server uses them — so there is no way to read them from the screen or from the browser's developer tools. Within our team, administrative access is limited to the accounts that operate the service. And cutting it off is in your hands: “Disconnect” deletes the row for real, and revoking it from your Google account invalidates the tokens even if someone held them. The Security page covers the rest.
How to disconnect
From the Planner, with “Disconnect”. That deletes the row FOR REAL, tokens and all, rather than hiding it — it is the exception to what “How long we keep things” describes, and deliberately so: a hidden access token still works. You can also revoke it from your Google or Microsoft account settings, which is stronger still, because it invalidates the tokens even if someone held them.
Limited Use
Kanbanly's use of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements. Specifically: that data is used only to show you your calendar inside the Planner and to create or delete the events you ask for; it is not sold, not used for advertising, not used to train artificial-intelligence models, and no human reads it unless you authorise it, it is needed for security or to investigate abuse, or the law requires it.

Cookies and browser storage

Kanbanly uses the cookies it needs in order to work, and no others. There are no advertising cookies, no analytics cookies and no third-party tracking cookies — which is why you will not see a banner asking you to accept anything: there is nothing to accept.

Session cookies
Set by the authentication system so it knows you have signed in and can keep you signed in. Without them you would have to type your password on every page.
kanbanly-locale
Stores the language you chose, so the page is rendered in that language on the server and does not change in front of you as it loads.
kanbanly-reset
Marks that a password recovery is half finished, so you can be taken back to complete it. It clears itself when you finish or when you sign out.
Local storage
Some interface preferences — light or dark theme, the width of a panel, the view you had open on a board — are stored in your own browser and never reach our servers.

How long we keep things

While your account is active, your data is kept. This is the part worth reading carefully, because it is the part that usually surprises people.

When you delete a workspace, a board, a list or a card, it stops being visible and it does not come back: as far as you are concerned it is gone, and there is no bin and no way to restore it. But the row is not removed from the database — it is marked with a deletion date and hidden. This was done so that administrative and audit questions could be answered with real figures — how many things were deleted, and when — instead of having to say "no trace remains".

A board's activity log lives as long as the board does. Payment transactions and receipts are kept for as long as accounting and tax rules require, even if you cancel the plan. Support requests are kept so the history of what you wrote to us can be consulted.

If you want your data actually erased rather than merely hidden, write to us: it is a manual operation we perform on request. The next section explains how.

What you can ask us for

You can ask us for any of the following, at any time and without giving a reason:

To know what we hold
A copy of the personal data we store about you and where it came from.
To correct what is wrong
Almost all of it you can change yourself from your account. Whatever you cannot, we change for you.
To take it with you
An export of your content in a format you can open somewhere else.
To have it actually deleted
Effective removal of your account and your content from the database, beyond the hiding described in the previous section. Anything we cannot delete because of a legal obligation — billing records, typically — we will tell you about, with the reason.
To object or restrict
To stop receiving email notifications, or to ask us to stop processing a specific piece of data, where doing so does not stop the service from working.

How to exercise those rights

Write to us from the application's Help page, choosing the "Personal data and privacy" category. Arriving that way, we already know for certain which account this is about, which spares you the awkward step of having to prove you are you.

We reply as soon as we can. If your request means deleting things irreversibly, we will first confirm exactly what is going to be deleted, because there is no undoing it.

Who is responsible for all this

The contact details of the data controller, its tax identification, its registered address and the supervisory authority you can complain to will appear in this section as soon as they are confirmed. In the meantime, the contact channel for anything to do with your data is the application's Help page, category "Personal data and privacy", which reaches a person and not an automated inbox.

Minors

Kanbanly is not aimed at children under fourteen and we do not knowingly collect their data. If we find an account belonging to someone below that age, we close it and delete their data.

If you are a parent or guardian and believe a child in your care has created an account, let us know through Help and we will sort it out.

Changes to this policy

When we change something substantive — a new provider, a new piece of data, a different use — we will update the date shown under the title and tell you inside the application before the change takes effect. Wording fixes and changes that do not alter what we do with your data are published without notice.