Why trust us · read in 4 minutes

What we do with your data

Every week someone launches a new finance app and expects you to hand over your portfolio. Healthy scepticism is the right response. This page is written to be checked, not believed.

What we hear · 01
Anyone can prompt an AI into a finance app over a weekend. Why is this one different?

True, anyone can. Which is why our answer is not trust us but check us. Everything below is verifiable from the outside.

Before you share anything

Judge it on fake data first

The demo is the complete dashboard running on a fictional portfolio. No account, no email address, no cookie wall. Most doubts are settled by looking around for two minutes.

Open arithmetic

Our formulas are public

Every number on the dashboard has a published explanation on the how we calculate page. If our maths is wrong, you can catch us. Weekend projects don't usually invite that.

Skin in the game

Tested like it's our own money. It is.

Over 500 automated checks run before any change goes live, most of them on the money maths: returns, dividends, currency conversion, taxes withheld. The builder's own portfolio runs on the same code as yours, so a bug that hits you hits him first.

Who answers

A person, not a ticket queue

Gainzkeeper is built and run by one Dutch investor who made it for his own DeGiro portfolio. Messages through the contact page land with him, and things that are broken or unclear get fixed by the person who broke them.

What we hear · 02
I don't want my net worth sitting in some stranger's database.

So we designed for a sceptic: you give us as little as possible, and the database itself keeps everyone else out. Here is exactly what crosses the line, and what never does.

No broker connection

We never touch your DeGiro account

There is no login link, no API key, no open banking consent. You download your own transaction file from DeGiro and upload it here. Open it in Excel first if you like: it contains what you bought, when, and for how much. Nothing else.

What a DeGiro transaction file actually contains
DateProductISINDescriptionAmount
03-02-2026VWCEIE00BK5BQT80Buy 4 @ € 112,34− € 449,36
15-01-2026ASMLNL0010273215Dividend+ € 6,40
02-01-2026iDEAL deposit+ € 500,00
No BSNNo bank account numberNo passwordsNo address

Rather share even less? Skip the file and enter positions by hand. And if a file is ever malformed, the import changes nothing at all: it goes through completely or not at all.

The full inventory

What we store, what we never have

Stored, visible only to you

  • Your transactions and holdings, from your file or typed in by hand
  • The email address of your Google accountso you can sign in, nothing more
  • Your language and theme preference

Never in our systems

  • Your DeGiro loginthere is nowhere to type it
  • Your bank details or BSNnot in the file, not in any form
  • A Gainzkeeper passwordsign in is Google only, so there is no password of ours to leak
Enforced below our code

The lock is in the database, not in the app

Every row of your data is tagged with your user id, and the database enforces row level security: it refuses to serve rows that are not yours, full stop. This rule is a Postgres feature that holds even if our application code has a bug. Your session gets your rows. Everyone else gets nothing.

The database runs on Supabase servers in the EU, in Ireland.

Your connection to Gainzkeeper is encrypted in transit, the same way your bank's is. That part is table stakes, not a selling point.

The uncomfortable question

Could someone at Gainzkeeper look at your data? Honestly: yes.

The operator of any app you use can technically reach the stored data. That is true of your bank, your broker, and every portfolio tracker on the internet, including this one. Most apps paper over it with the word encrypted.

We removed the word encrypted from our own homepage in July 2026, because it promised more than it delivers.

Your data does travel and sit encrypted, but that alone does not restrain an operator, so we refuse to use the word as if it does. What restrains us is plainer: your data is never sold and never shown to anyone else (the only parties that touch it are the processors named in our privacy policy), the builder keeps his own portfolio in the same table as yours, and the export button below means you can leave the first time we give you a reason to.

What we hear · 03
It's free. So my data is the product, right?

A sensible rule of thumb for the internet. Here is why it does not apply, and what to hold us to.

No advertising economy

No ads, no trackers, no resale

There is no advertising on Gainzkeeper and no ad network watching you use it. Analytics are cookieless and run on EU servers: we count which features get used, not who you are. To do that, your browser stores one anonymous ID, so a repeat visit counts as the same visit instead of a new one. That ID never follows you to other sites and is never shared or sold. Your portfolio is never sold and never shown to anyone else. There is no one to sell it to and no business model that needs it.

When the import does not recognize a row in your file, we automatically send an anonymized pattern of that row, with every number, code and name removed, so we can improve the import.

The boring truth

Why free is not a trick

A tool like this costs little to run. It exists because the builder wanted it for his own portfolio and opened it up. There is no investor demanding growth and no growth team hunting your data. If the model ever changes, you will read it in plain words, and the export button will still be there.

The exit

Leaving is an ordinary button

Export your complete history as CSV or Excel whenever you want. The file round trips: you can re‑import it here or take it to any other tool or spreadsheet. Deleting your account wipes your portfolio data immediately. A service that makes leaving easy has to be worth staying for, and we prefer that arrangement.

What we hear · 04
You send my portfolio to an AI though, right?

No. By default nothing of yours reaches an AI model. There is one AI feature, it is off, and you decide whether it ever goes on.

Off until you switch it on

The server simply refuses

The analysis is a separate feature with its own switch. While it is off, no AI model processes your portfolio. That is not a promise in a settings menu: the server refuses the request as long as the switch is off.

What does go when you opt in

A summary, not your records

Switch the analysis on and a summary goes to the model per holding: ticker, name, weight, return and value, plus the total. No name, no email address, no transaction history, no dates. The model runs at Groq, an American compute platform. The result is stored in your own account and disappears when you delete your account.

The short version

Don't trust us. Test us.

Open the demo, poke around, read the formulas. Bring your own file only when you are satisfied, and take it back out whenever you like.