Skip to content
Help
WhatsAppDownload
Case study

Case study: Brazilian developer earning $5k

A real scenario: a dev receiving $5,000 a month from a foreign company. How much is lost to FX, and how much can be recovered.

Case studyDeveloperUSDBusiness
Updated October 7, 2026Reviewed for accuracy
Brazilian developer working for a US company

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

CriteriaRuvoBank / SWIFT
FX + fees + IOF0.3% PJ / 0.9% PF~6% or more
TimeSeconds (Pix)1 to 5 business days
Approx. cost / month~$15 PJ / ~$45 PF~$300
Card spend in dollarsFree (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

João's numbers are an example, not a fixed rule. The gap between the bank and Ruvo grows or shrinks with a few levers:
  • 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

Updated on October 7, 2026

This content is for information only and is not financial or tax advice. How we write

Frequently asked questions

The case of the dev earning $5k a month.

Are the example numbers real?

They are an estimate based on typical costs: 4%-8% total cost at banks over SWIFT versus under 1% at Ruvo. Exact figures vary with the bank, the rate and the tax regime.

See more questions
Does the case study assume any specific tax regime?

The worked example shows the FX and IOF cost comparison and does not model the income tax layer. Income tax on foreign earnings depends on whether you receive as PF (IRPF up to 27.5%) or as PJ under Simples, Lucro Presumido, or Lucro Real. The fee savings shown are before tax — they apply regardless of which regime you use.

See more questions
Does this case study apply only to contractors, or also to employees?

The case study assumes a contractor (PJ) structure, since employees of foreign companies in Brazil are typically on a payroll service that converts to reais before payout. If you are an employee via an EOR (Employer of Record), you may not control the conversion. If you are an independent contractor invoicing a US company, you do control it — and the case study scenario applies directly.

See more questions
What are the next steps if I want to replicate this setup?

Open a Ruvo account (PJ or PF, depending on your structure), receive your US routing number and account number, share those details with your client or payroll platform, and update your payment method. The first transfer can take a business day or two to confirm. Once it arrives, you can convert or hold as needed. If you are not yet set up as PJ, speak to a contador about opening a CNPJ first — it typically takes a few days to a week.

See more questions
How does the saving reach $3,000 a year?

As a PJ, the difference between ~6% at a bank and ~0.3% at Ruvo to convert to reais is about $285 a month. Over 12 months that approaches $3,400, not counting the dollars spent free on a 0% IOF card or the benefit of receiving in seconds instead of days.

See more questions
See all questions →

Ready to Ruvo?

Start using Ruvo today and take control of your money.

QR code to download the Ruvo app
Scan to get Ruvo
Apple App StoreGoogle Play Store