What Okidoky Learns From Your Data (And What It Doesn't) — In Plain Language

Finance apps often use a vague phrase like "AI-powered insights" or "smart forecasts" on their website. What technically happens with your spending data is rarely explained. This post closes that gap: here's exactly what Okidoky does with your data, arithmetically and in terms of who has access.

The short version

  1. All calculations run on our own server, not in an external AI cloud.
  2. The math is standard statistics — no machine-learning model, no LLM.
  3. Your data is never used to train models — not for us, not for third parties.
  4. No aggregated user stats are collected — we have no "average user spends €X" dataset.

Details per topic below.

What does the forecast feature actually do?

When you open a monthly projection, Okidoky looks at your entered transactions from recent months and calculates expected spending for the month(s) ahead. The rules are simple enough to do on paper:

  • Fixed costs (recurring transactions you've flagged yourself): carried over one-to-one. Netflix €13/mo stays €13/mo.
  • Variable spending per category: we take the average of your last 3 to 6 months (depending on availability) and project it forward.
  • Seasonal patterns: if a category clearly peaks in December (gifts) or August (holidays), that's picked up in the forecast. This is standard time-series analysis — not AI.
  • Uncertainty margin: the further into the future, the wider the margin. We always show that margin explicitly.

The math behind this is in any introductory statistics textbook. No magic, no model trained on millions of datapoints.

What Okidoky explicitly does NOT do

A few things that sound "obvious" but that we deliberately skip:

1. No LLM analysis on your transactions

There's no cloud AI model reading your transaction descriptions to categorise them or "generate insights". The category mapping you see is either set by you, or via a simple lookup table (for example "Albert Heijn" → "Groceries"). That table lives locally in our code, not in a GPT call.

2. No aggregated user stats

We have no database of "what do our users typically spend on groceries?". The database contains each user's own transactions, but there's no process that computes across all users for marketing or product analysis. We deliberately don't build those aggregations — once they exist, they become irresistible.

3. No export to third parties

Your transaction data is never passed on to marketing partners, insurers, data brokers, or AI training pipelines. Within Okidoky there are three exceptions, each with a clear reason:

  • Mollie sees the payments you make through them (Premium subscription, Lifetime purchase). That's inherent to a payment processor — we can't invoice you without them seeing the invoice.
  • Hetzner (hosting) runs our servers. They don't "see" your data substantively, but technically it sits on their hardware — which is why EU hosting matters.
  • SMTP mail (via Plesk) sends our emails to you. Only the mail traffic itself (subject line, body of our automated emails) passes through that relay.

That's it. No Google Analytics on logged-in pages. No Facebook pixel. No Segment.

What can you concretely do to verify?

Three ways to check what we claim above:

  1. Open developer tools in your browser (F12 → Network tab). Log in with a paid account and navigate inside the logged-in area. Every request is visible — you'll see okidoky.nl, stateless CDNs for fonts/icons (fonts.googleapis.com, fonts.gstatic.com, cdn.jsdelivr.net), and during purchase mollie.com. No analytics SDK, no Mixpanel, no Segment. (On free-tier you also see pagead2.googlesyndication.com — AdSense for our documented free-tier revenue model. On public marketing pages GA4 loads via Google Tag Manager, consent-gated default denied.)
  2. Check our sub-processors page at /sub-verwerkers. That list is exhaustive; if a new party were added, it would have to appear there first before we enable them.
  3. Export your data via Profile → Export. You'll get exactly what we have, as CSV. Compare it against what you entered yourself — that's the full contents.

Why do we build it this way?

Deliberate design choice. Anyone who builds a ledger app for sensitive data has two options:

  1. Maximum features, maximum analytics: collect as much data as possible, train models, generate "insights", and hope no one digs in.
  2. Minimum feature scope, deliberately limited data processing: only compute what's needed, use standard math, don't build aggregated user stats.

We chose option 2. It yields fewer "impressive AI insights" — but a product that's explainable in one blog post and that you can check yourself.

What we want to hear

If something in this post isn't right, or you have a concrete question that isn't answered, email info@okidoky.nl. This is the topic where we want to be correctable — a mistake in this post is one we'd rather fix today than tomorrow.


Okidoky — a ledger app that's explainable in one blog post. Free to try, no credit card.