← Back to blog

Millennium BCP and Revolut: Why Your Spending Tracker Is Lying to You

Millennium BCP and Revolut: Why Your Spending Tracker Is Lying to You

Most Portuguese households with accounts at Millennium BCP and Revolut overstate their monthly expenses by 8–10 percentage points because transfers between those accounts are counted twice.

You pull up your spending tracker. The number looks wrong — higher than it should be. You transferred €600 from your BCP current account to your Revolut for a weekend trip. Both apps logged it. Now you have €600 of phantom spending inflating your totals, and every category percentage is off.

Why This Happens With Two Portuguese Banks

Millennium BCP and Revolut are two of the most common account combinations in Portugal. One handles salary and direct debits; the other handles day-to-day card spending, travel, and the occasional currency conversion. That split is sensible. The data problem it creates is not.

PSD2 — the EU directive that lets an aggregator connect to a bank at all — determines how banks classify and report transactions. In Portugal, compliance is enforced by Banco de Portugal. Under that framework, a transfer out of BCP is a debit at BCP. A transfer into Revolut is a credit at Revolut. Neither bank knows what the other saw. Aggregate both feeds and the transfer appears on both sides of your ledger.

Double-counting is structural. It is not a bug anyone will fix.

What the Distortion Actually Costs You

Say your net monthly income is €2,800. You spend €1,900 on actual expenses and transfer €600 between your own accounts. A tracker reading both feeds shows €2,500 in outflows — that is €1,900 real spending plus €600 counted twice as an expense.

Your apparent savings rate drops from 32% to 11%. Those are not rounding errors. At 32%, you are on track; at 11%, the Banco de Portugal Household Financial Survey (Inquérito à Situação Financeira das Famílias, Banco de Portugal, 2023) puts the median savings rate at 7–8%, which would flag you as average at best.

The number you act on is wrong. That is the problem.

Category Percentages Are Wrong Too

Every category percentage is distorted too. If your tracker sees €2,500 in outflows instead of €1,900, then groceries at €400 look like 16% of spending rather than 21%. Housing at €800 looks like 32% rather than 42%.

You make decisions based on those percentages — whether to cut subscriptions, whether you can afford a rent increase, whether the food budget has room. With transfers inflating the denominator, every ratio is compressed downward. You think you are spending less on necessities than you are. This is not a minor quirk — using these compressed ratios to decide whether you can afford a rent increase is like reading a map drawn at the wrong scale.

Bad data produces bad decisions.

”Just Categorise the Transfer Manually”

The standard objection is that any decent app lets you mark a transaction as a transfer and exclude it. True. But this requires you to catch every one, every month, across both apps, with consistent logic. Miss one in a month and your numbers drift. Most people do not audit their categorisation monthly — they check it, trust it, and act on it.

Most aggregator apps in Portugal treat every debit as an expense by default — and put the correction burden on you. Most users miss transfers and never reconcile the damage.

Manual fixes are not reliable fixes.

So What: Get the Accurate Number

Manual categorisation works in theory; in practice, one missed month compounds into distorted annual trends. Automation removes the variable entirely. If you want to see your real spending without reconciling two bank exports by hand, MyCFO strips inter-account transfers automatically — so the number you see is actual expenses, not a mix of expenses and movements.

MyCFO internal data (2024) finds that most Portuguese households with a BCP and Revolut combination overstate monthly expenses by 8–10 percentage points.

Here is the calculation to run yourself:

  1. List every outflow from both accounts for one calendar month.
  2. Identify every transaction that appears as a debit at one bank and a credit at the other — those are your own transfers.
  3. Remove those transfers from both sides before summing expenses or computing your savings rate.
  4. Divide actual expenses by net income to get a number you can act on.

If your corrected savings rate is below 20% of net income and you plan to retire before 65, close that gap now — not next quarter.

The Number That Changes Everything

One correction, one month. That is all it takes to see whether your financial picture is what you thought it was. Strip the transfers, recalculate the percentages, and act on real data.


Frequently Asked Questions

Does the double-counting problem get worse with more than two accounts?

Yes, proportionally. With three accounts — say BCP, Revolut, and ActivoBank — transfers can appear in three feeds simultaneously. Each internal movement has more chances to be miscounted. The more accounts you hold, the larger the gap between apparent and actual expenses. Your exclusion process needs to be equally more disciplined.

How do I know which transactions in Revolut are transfers from BCP versus real income?

Look at the originating IBAN on the Revolut credit. If it matches your BCP account IBAN, it is a transfer, not income. Most banking apps show the sender IBAN on the transaction detail screen. Tag those transactions consistently — and do it the same way every month — so your income figures do not get inflated alongside your expense figures.

Does Portugal’s inflation rate affect how I should interpret my spending data?

Directly, yes. With HICP at 2.4% for December 2025 (Eurostat), flat nominal spending still means rising real costs. Your corrected expense total may look flat. But at 2.4% annual inflation, flat spending means you bought roughly 2.4% less than last year. Always adjust your month-on-month spending comparison for inflation before concluding your budget is under control.


Tracking spending across Millennium BCP and Revolut is straightforward — when inter-account transfers are excluded. Most apps skip that step by default. Most apps dump every debit into your expense total. MyCFO identifies your own transfers and removes them automatically, so you see what you actually spent. See your real spending number →