How to Budget in Two Currencies Without Losing Your Mind

·11 min read

You earn in dollars. You spend in euros. Your rent is EUR 1,200, your student loans are $350, and you just paid for groceries with a card that could be either currency, you're not entirely sure.

Sound familiar? Budgeting in two currencies is one of those problems that seems simple until you try to do it. The math isn't hard. It's the constant shifting that wears you down. The rate changes. The accounts don't talk to each other. Your budget says one thing, your bank says another.

Here's a practical, step-by-step approach that actually works.

Step 1: Pick your budget currency

You need one currency as your anchor. This is the currency you'll use to see totals, measure progress, and answer the question "am I on track this month?"

For most US expats, that's still USD, it's what your salary is denominated in, what your taxes are filed in, and how you think about money. But if you've been abroad long enough that you think in euros or pounds, use that instead.

The right choice is the currency you instinctively compare prices in. If you see a EUR 15 lunch and immediately think "that's about $16," your budget currency is probably still USD. If EUR 15 just feels like EUR 15, go with EUR.

Don't try to maintain two separate budgets in two currencies. That's twice the work and you'll inevitably lose track of the big picture. One budget, one home currency, with individual transactions tracked in whatever currency they actually happened in.

Step 2: Map out your accounts and what currency they're in

Before you budget anything, get a clear picture of where your money lives. Write it down:

  • US checking (USD): Salary deposits, student loans, US subscriptions
  • US credit card (USD): Netflix, phone plan, Amazon, occasional travel booking
  • Spanish bank account (EUR): Rent, groceries, utilities, daily spending
  • Wise multi-currency (EUR/USD): Currency transfers, occasional EUR purchases

Most expats end up with 3-5 accounts across 2-3 currencies. That's normal. The goal isn't to consolidate accounts, it's to see them all together.

Step 3: Separate your spending into local and home country categories

Your budget categories need to reflect the reality that some expenses are in one currency and some are in another. Here's a setup that works well:

EUR expenses (local life):

  • Housing: EUR 1,200 (rent + comunidad)
  • Groceries: EUR 350
  • Transport: EUR 50 (metro pass)
  • Eating out: EUR 150
  • Utilities: EUR 80
  • Health insurance: EUR 120

USD expenses (home country obligations):

  • Student loans: $350
  • US phone plan: $45
  • Subscriptions: $65 (Netflix, Spotify, iCloud)
  • US health insurance: $200 (if applicable)

Mixed:

  • Travel: varies (could be either currency)
  • Shopping: varies

The point isn't to perfectly categorize every possible expense. It's to know, roughly, how much you need in each currency per month. In this example, you need about EUR 1,950 and $660 per month.

Step 4: Handle income conversion

If you earn in USD and spend mostly in EUR, money needs to cross the currency border. This is where most people lose track of their budget.

Set up a regular transfer schedule. Once a month works well for most people. Calculate how much EUR you need (step 3 gives you that number), add a 5-10% buffer for unexpected expenses, and transfer that amount.

For the example above, you'd transfer roughly EUR 2,100-2,150 per month. At a EUR/USD rate of 1.09, that's about $2,290-2,345 leaving your USD account.

Use the actual rate you receive, not the Google rate. If you transfer $2,300 through Wise and receive EUR 2,105, your effective rate was 1.093. Budget based on that number, it's what actually happened.

Track the transfer itself as a line item. Not as spending, but as a money movement. "Transferred $2,300 to EUR account, received EUR 2,105." The $2,300 is gone from your USD budget. The EUR 2,105 is now available in your EUR budget. The difference (about $12 in fees) goes in a "transfer costs" category.

Step 5: Track daily expenses in their original currency

When you buy groceries for EUR 47.50, record it as EUR 47.50. Don't convert it to dollars. Don't round. Just log it in the currency you paid.

The conversion to your home currency happens at the end, when you're reviewing your budget, not when you're standing at the checkout. This keeps daily tracking simple and accurate.

For credit card purchases, use the rate your card actually charged. You can find this on your statement. For most US credit cards with no foreign transaction fee (Chase Sapphire, Capital One Venture, etc.),1 the rate is close to mid-market. Cards that charge a 3% foreign transaction fee will show a worse rate.

If you're using a spreadsheet, add a column for the original currency and amount, and a separate column that converts to your home currency using that month's average rate. If you're using an app, it should do this for you.

Step 6: Review monthly, in your home currency

At the end of each month, convert everything to your home currency and look at the totals. This is your real spending number.

A simple monthly review looks like this:

  1. Total EUR spending: EUR 2,050 (converted at month's average rate of 1.09 = $2,235)
  2. Total USD spending: $660
  3. Transfer costs: $12
  4. Total spending: $2,907
  5. Income: $5,200
  6. Savings: $2,293

Compare that to your budget targets. Were you over on groceries? Did a one-off expense throw things off? Was it the exchange rate?

Speaking of which: note what rate you used. If last month's average was 1.07 and this month it's 1.09, your EUR spending costs you about 2% more in dollar terms even if you spent exactly the same in euros. Knowing this stops you from blaming yourself for exchange rate movement.

Step 7: Build in a rate buffer

Exchange rates move. You can't predict them, and you shouldn't try. But you can plan for the movement.

When setting your monthly budget, use a slightly conservative exchange rate. If EUR/USD is trading at 1.09, budget as if it's 1.06 or 1.07. This creates a natural cushion. In months when the rate is favorable, you'll come in under budget. In months when it moves against you, you won't blow past your targets.

A 2-3% buffer on a EUR 2,000/month spend is roughly $40-60 per month. That's cheap insurance against the stress of rate fluctuations.

Tools that make this easier

You can absolutely do all of this in a spreadsheet. Our free multi-currency budget template is designed for exactly this setup, tabs for monthly budgeting, account balances, and exchange rate tracking.

But spreadsheets require discipline. You have to log transactions manually, look up exchange rates, and do the conversions yourself. That works for some people. For others, it lasts about three weeks before the spreadsheet goes stale.

If you want this automated, Borderless Budget connects to bank accounts in both the US and Europe, pulls in transactions in their original currency, and converts everything using daily exchange rates. You see your full picture, both currencies, all accounts, in one place. There's a 30-day free trial.

The short version

  1. Pick one home currency for your budget
  2. Map all your accounts and their currencies
  3. Know how much you need in each currency per month
  4. Set up a regular transfer schedule with a rate buffer
  5. Track expenses in their original currency
  6. Review monthly in your home currency, noting the exchange rate

It takes a bit more setup than a single-currency budget. But once the system is in place, it runs itself. The goal isn't perfection, it's knowing where your money goes, in every currency, without the mental gymnastics.


Sources

  1. 1. Chase Sapphire Preferred, Chase Sapphire Reserve, Capital One Venture, and Capital One Venture X all charge no foreign transaction fees. No Capital One card charges foreign transaction fees as a company-wide policy. Per chase.com and capitalone.com card terms, March 2026.

Related reading:

your budget shouldn't need a passport

See all your money in one place

Join the waitlist for early access and 50% off at launch.

Join Waitlist

no spam, just launch updates