The scenario
João is a contractor developer receiving $5,000 a month from a US company. The question almost no one asks: how much of that actually lands in the account after FX, fees and IOF? The table below is the bottom line at a glance; the rest of the article breaks down where each cost comes from.
$5,000 a month: before and after
| Criteria | Ruvo | Bank / SWIFT |
|---|---|---|
| FX + fees + IOF | 0.3% PJ / 0.9% PF | ~6% or more |
| Time | Seconds (Pix) | 1 to 5 business days |
| Approx. cost / month | ~$15 PJ / ~$45 PF | ~$300 |
| Card spend in dollars | Free (0% IOF) | 3.5% IOF + 2-7% FX |
| Saved per year (vs bank) | up to ~$3,400 (PJ) | n/a |
The hidden cost of the traditional way
Receiving via bank and SWIFT, the combined cost across FX spread, fees and IOF easily reaches 6% or more, about $300 a month, or close to $3,600 a year. And the money still takes days to arrive.
The same payment with Ruvo
With Ruvo, João receives the salary in dollars, free, holds the balance in USD and converts to reais when he wants. As a business (PJ), conversion is 0.3%; as an individual (PF), 0.9%. Either way there is 0% IOF, none of the 0.38% IOF that other providers charge to receive (0% for a PJ's correctly classified export revenue), so as a PJ the cost is about $15 a month and as a PF about $45, still a fraction of the bank’s cost.
Not sure which account is right for your situation? See our guide to the best accounts to receive USD in Brazil.
The card adds even more
Say João keeps $1,000 a month in dollars for tools, ads and subscriptions. On the Ruvo card that spend is free (0% IOF, 0% spread). On a Brazilian bank card it would carry 3.5% IOF plus a 2% to 7% FX markup, roughly $55 to $105 a month, gone, on top of the conversion cost.
The yearly math
On conversion alone the annual difference tops $3,000 in this example, before counting the free dollar spend, and without working a single extra hour. It is the kind of saving that quietly compounds and that few stop to calculate. And FX is only part of it: as a PF the income tax (Carnê-Leão, up to 27.5%) is far higher than as a PJ on Simples with pró-labore, see PF vs PJ and business tax on exported services, and how to receive a USD salary in Brazil with lower fees (confirm the tax side with your accountant).
What changes your number
- PF or PJ. Converting as a business (0.3%) versus an individual (0.9%) is the single biggest factor at this income level.
- How much you hold in dollars. Every dollar you spend straight from the USD balance, instead of converting to reais first, skips the conversion entirely.
- Card spend. The more of your tooling, ads and travel you put on the dollar card, the more 3.5% IOF plus FX markup you avoid.
- Conversion timing. Holding USD and converting in portions lets you pick your rate instead of taking whatever the bank gives you on arrival.
If you're working remotely for a foreign company and want to understand the full structure — contracts, tax, and FX — see our guide to working remotely for foreign companies.
Why we built Ruvo
This problem is personal. Ruvo was started by Mike Mason and Alec Howard, who were paying software engineers in Brazil and saw first-hand how much was lost to bad FX and IOF, and how long it took for the money to actually arrive. Ruvo is the account they wished those engineers had had: dollars received free, held, converted at a flat low rate, and spent with 0% IOF.
Sources
- Decree 12.499/2025, IOF rates (Planalto)
- IOF rate guide for Decree 12.499/2025 (Lefosse)
- IOF on international operations, what changed (CRCSP)
Updated on October 7, 2026
This content is for information only and is not financial or tax advice. How we write




