# Freelancers: Billing in USD When Your Bank Isn't

> Bill in the client's currency, get paid into yours, and stop being surprised by the difference. The invoice clause, the tracking sheet, and the rate habits that protect your margin.

- Source: https://www.8apps.co/blog/freelance-billing-foreign-currency
- Markdown: https://www.8apps.co/blog/freelance-billing-foreign-currency.md
- Published: 2026-09-16
- Author: 8apps Team
- Language: en

---
## The gap between what you billed and what arrived

Every freelancer with foreign clients learns it the same way: the invoice said $2,000, the bank shows something else in your currency, and the difference – rate movement plus conversion spread – came out of you. You cannot control FX, but you can stop being surprised by it, price it in, and keep the record straight. Three habits do it.

## Habit 1 – quote with a rate date in mind

When you set a day rate or project price in a client's currency, convert it back at today's rate *and* look at where the pair has been over recent months – a price that only works at this month's rate is a price with a leak in it. Rule of thumb, stated honestly as one: leave margin for movement, or agree the price in your own currency and let the client carry the conversion.

**An invoice clause worth adapting:**

> Amounts are stated in USD. Payment is due in USD; any conversion charges are borne by the payer.

Plain, fair, and it moves the spread conversation to before the work instead of after the payment.

## Habit 2 – track billed vs received as two columns

The tracking sheet needs one honesty feature most invoice templates lack – the difference made visible:

| Date | Client | Billed (USD) | Rate @ invoice | Expected (local) | Received (local) | Gap |
|---|---|---|---|---|---|---|

`Expected` uses the invoice-date rate – in Sheets, `=INDEX(GOOGLEFINANCE("CURRENCY:USDSGD","price",A2),2,2)` filled down (swap `SGD` for your currency), then frozen as values once checked. `Received` comes from your bank. The **Gap** column, summed over a quarter, is your real FX cost – the number that tells you whether habit 1's margin is set right. Google's caveats apply comfortably at this precision: the live quote is *"delayed by up to 20 minutes"*, and Google *"cannot guarantee the accuracy of the exchange rates displayed"*. The [multi-currency invoice tracker](/blog/multi-currency-invoice-tracker-google-sheets) is the fuller version of this sheet.

## Habit 3 – convert at the moment of decision, not after

The costly conversions are the ones you didn't do: agreeing to a "small" scope change priced in the client's currency, quoting a rush fee by gut feel, reading a counter-offer in a currency you think in badly. The habit is mechanical – convert every number before you say yes to it.

That is the moment [Currency Converter](/google-workspace/currency-converter) is built for: the client's email is open in Gmail, the proposal is open in Docs, and the sidebar converts on the spot – live rates for 180+ currencies inside Gmail, Docs, Calendar, Slides and Sheets, unlimited and free in the sidebar, no sign-up. The tracking sheet keeps the record; the sidebar keeps you from agreeing to numbers you haven't understood yet. (For the invoice-date rates in habit 2, its Premium tier adds a Sheets formula with history back to 2000.)

## Sources

- [GOOGLEFINANCE – Google Docs Editors Help](https://support.google.com/docs/answer/3093281) – read 2026-09-16
- [Google Finance disclaimer](https://www.google.com/googlefinance/disclaimer/) – read 2026-09-16
- [Currency Converter by 8apps](/google-workspace/currency-converter) – product claims, read 2026-09-16
