Nomad visa income requirements, divided by what living there actually costs
Every nomad visa list ranks countries by income requirement, which tells you almost nothing. A $1,400 floor in Germany and a $1,410 floor in Ecuador are the same number and not remotely the same test, because one of them is below the cost of living in the cheapest German city we track and the other is more than half again what you would spend in Baños.
So this page divides instead. For every country that publishes both a nomad visa income floor and has cities in our cost dataset, we take the floor and divide it by the monthly cost of the cheapest city we track in that country. The result is a multiple: how many months of local living the government wants you to be able to fund with one month of income.
The easiest nomad visas relative to local cost are Germany at 0.74×, Albania at 0.91× and Mauritius at 0.94×. In Germany's case the freelance permit's $1,400/mo benchmark is actually below the $1,900 a month you would spend in Leipzig, the cheapest German city we track — the floor is not the binding constraint, the rent is.
The hardest, on the same measure, is Indonesia at 5.56×, where the $5,000/mo requirement is more than five times what a month in Yogyakarta costs. That is not a country pricing for its own cost of living. It is a country using the income floor to select who arrives.
| Ratio | Country | Income floor | Cheapest city we track | Cost/mo | Visa length |
|---|---|---|---|---|---|
| 0.74× | Germany | $1,400/mo | Leipzig | $1,900 | Freelance (Freiberufler) permit |
| 0.91× | Albania | $820/mo | Shkodër | $900 | 1 year |
| 0.94× | Mauritius | $1,500/mo | Mahébourg | $1,600 | 1 year |
| 1.00× | Colombia | $1,000/mo | Cali | $1,000 | Up to 2 years |
| 1.12× | Norway | $3,250/mo | Trondheim | $2,900 | Up to 2 years (independent contractor permit) |
| 1.13× | Montenegro | $1,470/mo | Podgorica | $1,300 | Up to 2 years |
| 1.36× | Brazil | $1,500/mo | Belo Horizonte | $1,100 | 1 year |
| 1.45× | Cape Verde | $1,600/mo | São Filipe (Fogo) | $1,100 | 6 months |
| 1.57× | Ecuador | $1,410/mo | Baños | $900 | 2 years |
| 1.58× | Italy | $2,530/mo | Palermo | $1,600 | 1 year |
| 1.76× | Spain | $3,000/mo | Las Palmas | $1,700 | 1-year visa |
| 1.82× | Malaysia | $2,000/mo | George Town | $1,100 | 3–12 months |
| 1.82× | Namibia | $2,000/mo | Lüderitz | $1,100 | 6 months (not renewable) |
| 2.00× | Barbados | $4,200/mo | Bathsheba | $2,100 | 12 months |
| 2.00× | Costa Rica | $3,000/mo | Puerto Viejo | $1,500 | 1 year |
| 2.00× | Cyprus | $3,800/mo | Larnaca | $1,900 | 1 year |
| 2.00× | Malta | $3,800/mo | Gozo (Victoria) | $1,900 | 1 year |
| 2.05× | Portugal | $3,480/mo | Porto | $1,700 | 1 year |
| 2.14× | Panama | $3,000/mo | El Valle de Antón | $1,400 | 9 months |
| 2.22× | Slovenia | $3,550/mo | Kranj | $1,600 | 1 year (not immediately renewable — 6-month gap) |
| 2.25× | Czechia | $2,700/mo | Olomouc | $1,200 | Up to 1 year (Digital Nomad Program) |
| 2.38× | Taiwan | $3,330/mo | Hualien | $1,400 | 6 months |
| 2.43× | Iceland | $7,300/mo | Keflavík | $3,000 | Up to 6 months |
| 2.50× | South Africa | $3,000/mo | Durban | $1,200 | Up to 3 years |
| 2.71× | Greece | $3,800/mo | Heraklion | $1,400 | 1-year visa |
| 2.73× | Turkey | $3,000/mo | Ankara | $1,100 | Up to 1 year |
| 2.75× | Croatia | $3,580/mo | Rijeka | $1,300 | Up to 18 months (not renewable back-to-back) |
| 2.95× | Japan | $5,600/mo | Fukuoka | $1,900 | 6 months (not renewable back-to-back) |
| 2.95× | Hungary | $3,250/mo | Debrecen | $1,100 | 1 year |
| 3.33× | Kazakhstan | $3,000/mo | Karaganda | $900 | 1 year (Neo Nomad visa) |
| 3.33× | South Korea | $5,000/mo | Gwangju | $1,500 | 1 year |
| 3.45× | Latvia | $3,450/mo | Daugavpils | $1,000 | 1 year |
| 3.82× | Mexico | $4,200/mo | Oaxaca | $1,100 | 1 year |
| 3.91× | Romania | $4,300/mo | Sibiu | $1,100 | 1 year |
| 4.08× | Estonia | $4,900/mo | Narva | $1,200 | Up to 1 year |
| 4.60× | Kenya | $4,600/mo | Kisumu | $1,000 | 1 year |
| 4.81× | Belize | $6,250/mo | San Ignacio | $1,300 | 6 months (Work Where You Vacation) |
| 5.56× | Indonesia | $5,000/mo | Yogyakarta | $900 | 1 year (E33G Remote Worker KITAS) |
38 countries with a published nomad visa income floor and at least one city in our dataset, ranked by how many months of local living costs the floor buys. Lower is easier.
Why the ratio is the number that matters
An income floor does two different jobs at once, and lists that rank by the raw dollar figure conflate them. The first job is solvency: proving you will not become a burden. The second is selection: deciding what kind of person the country wants. A floor set near local cost is doing the first job. A floor set at four or five times local cost is doing the second, whatever the stated rationale.
The practical consequence is that the raw figure misleads in both directions. Iceland has the highest floor in the dataset at $7,300/mo, which reads as impossible — but Iceland is also one of the most expensive places on earth, and at 2.43× it is a milder test than Mexico, whose $4,200/mo sounds moderate and is not.
The countries where the floor is below local cost
Three countries set a floor at or under the cost of the cheapest city we track in them:
- Germany — $1,400/mo against $1,900 in Leipzig (0.74×)
- Albania — $820/mo against $900 in Shkodër (0.91×)
- Mauritius — $1,500/mo against $1,600 in Mahébourg (0.94×)
- Colombia — $1,000/mo against $1,000 in Cali (1.00×)
This does not mean the visa is easy. It means the income test is not the part that will stop you. In every one of these cases the harder gate is elsewhere: paperwork, proof of client relationships, health insurance that meets a specific schedule of cover, or in Germany's case a professional-category judgement made by a case officer rather than a number on a bank statement.
Where the multiple is doing selection work
At the other end, these are the countries asking for four times local cost or more:
- Mexico — $4,200/mo against $1,100 in Oaxaca (3.82×)
- Romania — $4,300/mo against $1,100 in Sibiu (3.91×)
- Estonia — $4,900/mo against $1,200 in Narva (4.08×)
- Kenya — $4,600/mo against $1,000 in Kisumu (4.60×)
- Belize — $6,250/mo against $1,300 in San Ignacio (4.81×)
- Indonesia — $5,000/mo against $900 in Yogyakarta (5.56×)
Indonesia is the clearest case. The E33G remote worker KITAS asks $5,000/mo, while Yogyakarta costs $900 a month and even Bali's expensive neighbourhoods do not approach the floor. The number is not a solvency test. It is a filter, and it is worth understanding that before you spend two months assembling the file.
What this page does not tell you
The cheapest city we track is not the cheapest city in the country. We cover five cities per country, chosen for relevance to remote workers rather than for price, so the denominator is a defensible reference point rather than a floor. If you are willing to live somewhere we do not cover, every ratio on this page overstates the difficulty.
The ratio also ignores tax, which in several of these countries is the actual decision. A low ratio and a punitive tax residency rule is a worse deal than a high ratio with a flat expatriate regime, and nothing in this table captures that.
Common follow-up questions
Which nomad visa has the lowest income requirement relative to local cost?
Germany, at 0.74× — the $1,400/mo floor is below the $1,900 a month it costs to live in Leipzig, the cheapest city we track there.
Which nomad visa is hardest relative to local cost?
Indonesia. The $5,000/mo requirement is 5.56× the $900 monthly cost of Yogyakarta.
Does a low income requirement mean the visa is easy to get?
No. It means the income test is not the binding constraint. Health insurance schedules, apostilled documents, proof of ongoing client contracts and processing times all sit outside the income figure and are frequently the harder part.
Are these figures official?
Each one is recorded from the issuing country's own immigration authority and our country pages link to that source. Countries that publish in local currency are converted to US dollars for comparison, so the official local-currency figure governs, not our conversion.