
Months ago, I was wondering: what would it look like to sort the currencies of the world by their “strength“? You probably have a good idea of what the very strongest currency is and what the very weakest currency is, but in between those two extremes you might only have a vague idea.
I already had a Java program that could sort them by their 3-letter ISO-4217 codes (AED to ZWR) or by their 3-digit ISO-4217 codes (000 to 999). That’s easy enough, and it only changes when the International Organization for Standardization (ISO) adds currencies.
By “strength” I’m referring to how currencies exchange to one another. For example, if one unit of currency A exchanges to way more than 1.0 of currency B, then A is said to be stronger than B. But if one unit of A exchanges to a lot less than 1.0 of B, then A is said to be weaker than B.
Some of you might be thinking “Can’t you just ask ChatGPT?” I can. And I did. I will give the link later on, so please don’t put that query to it. But there’s a satisfaction from knowing that I can get the answer any time I want by using a program that I wrote, without worrying that my ChatGPT query might be the one that destroys some little river in some downtrodden community.
Plus I can readily explain my methodology, and if you have the Java runtime and an API key to a suitable exchange rate API, you can reproduce my results.
Weakest currencies
Before the unprovoked attack on Iran, the Iranian rial (IRR) was the world’s weakest currency. Exchange just one United States dollar (USD) or just one euro (EUR) for rials, and suddenly you’re a millionaire. Maybe that’s how Donald Trump is actually a billionaire: he has a thousand dollars’ worth of rials.
The rial was weak well before Trump launched his illegal and ill-advised war against Iran. At the end of January, Reuters reported that
Iran’s currency dropped to a record low of 1,500,000 rials to the U.S. dollar on Tuesday [January 27, 2026], according to Iranian currency tracking websites, weeks after protests sparked by the rial’s dwindling value rocked the country.
The rial has lost about 5% of its value over the course of this month [January], according to data from the currency tracking website Bonbast.com.
The Lebanese pound (LBP) has fared better than the Iranian rial, but not by much. It has at times been the weakest currency of the world.
The Vietnamese dong (VND) ranks as the third weakest currency.
I’ve been confused by some of the African currencies. According to the currency information file that comes with the Java 21 runtime, today’s Sierra Leonean leone has ISO-4217 letter code SLE, whereas SLL corresponds to the historical Sierra Leonean leone that was valid from 1964 to 2022. However, the rate provider I’m using recognizes both SLE and SLL. One euro exchanges to 28.0053 of the former and 28005.375 of the latter. That puts SLL as the fourth weakest currency, but if it’s really a historical currency, any quoted exchange rate is meaningless.
The Laotian kip (LAK) rounds out the bottom five. But if SLL doesn’t count, LAK moves to fourth weakest and the fifth weakest is the Indonesian rupiah (IDR).
Strongest currencies
The strongest currency is the Chilean unit of account (CLF). It’s my understanding that’s not a currency for actual everyday use for the locals. They use the Chilean peso (CLP), which is kind of weak, but not weak enough to be an extreme. Tourists in Chile can probably get by with United States dollars (USD), provided they don’t stray too far from the usual tourist destinations.
The strongest currency for everyday use is the Kuwaiti dinar (KWD). The Bahraini dinar (BHD), the Omani rial (OMR) and the Jordanian dinar (JOD) round out the top five. Bahrain, Jordan, Kuwait and Oman are all Middle Eastern countries that have good relations with the United States.
Anand Singh reports for India Today that Arab nations that have been struck by Iranian missiles are not retaliating.
Over the last three decades, Bahrain, Qatar, Kuwait, Oman, the UAE, and Saudi Arabia built an image of stability in an otherwise volatile Middle East. But that perception about the region changed when Iranian missiles and drones struck not just US bases in the Gulf countries, but also luxury hotels and residential areas in Dubai and Abu Dhabi. Despite Iran attacking industrial and civilian sites, nearly all Arab nations have so far shown restraint and avoided Tehran. …
Iran’s firing of missiles and drones at Israel, American bases in the Middle East and Arab countries follows the killing of Iran’s Supreme Leader Ayatollah Ali Khamenei in coordinated US-Israeli airstrikes. Khamenei wasn’t just the head of the Iranian state, he was the leader of Shia Muslims worldwide.
Right now, the Arab nations face a tough choice. If they strike back at a country that is part of the Muslim Ummah, they not only risk being seen as acting against the larger Islamic community, but also as standing alongside Israel. That too after a Shia leader’s assassination.
Three days into the conflict that has engulfed nearly the entire Middle East, only one notable development has emerged in terms of military warning to Iran, from Saudi Arabia. Reports say Crown Prince Mohammed bin Salman, the monarchy’s de facto ruler, authorised the Royal Saudi Armed Forces to strike back against Iran if the attacks persist.
If the attacks persist, Saudi Arabia will strike back at Iran. In the absence of levelheadedness from America, the Arab nations have to act with wisdom and care.
By the way, the Saudi riyal (SAR) is not in the top five strongest currencies, but it is actually close to the Israeli new shekel (ILS) in strength.
My methodology
Using Java 21, I created an exchange rate comparator, which takes as parameters an exchange rate provider and a base currency. That part of the program is open source and available from my GitHub.
It’s not absolutely necessary to have a base currency to rank currencies by strength, though it does make it easier for one to reason about this. Plus, if the API you’re using gives several rates in relation to one currency in a single API call, it makes more sense to parse that response and not make separate API requests for each comparison that needs to be done.
The base currency doesn’t have to be the United States dollar (USD). Theoretically, any currency recognized by the API can be used. The first time I ran my program, I used USD, but for the run for this article, I used the euro (EUR). Though I do get the feeling there are a lot of currencies pegged to USD — for example, the East Caribbean dollar (XCD) — and hardly any pegged to the euro.
The API that I used, from AYR Tech, lists some currencies that are not in the currency information file of the Java runtime that I used. There is a way to edit that file, but I haven’t figured out how to do that just yet. So instead I just had my program report the currencies it did not recognize.
Did not recognize CNH, said to be Offshore Chinese Renminbi
Did not recognize FOK, said to be Faroese Kru00f3na
Did not recognize GGP, said to be Guernsey Pound
Did not recognize IMP, said to be Manx Pound
Did not recognize JEP, said to be Jersey Pound
Did not recognize KID, said to be Kiribati Dollar
Did not recognize TVD, said to be Tuvaluan Dollar
Did not recognize XCG, said to be Caribbean Guilder
Did not recognize ZWG, said to be Zimbabwean Dollar
Of these, only the Guernsey pound (GGP), the Manx pound (IMP) and the Jersey pound (JEP) come close to cracking the list of the five strongest.
What ChatGPT says
ChatGPT gave me pretty much the same results I have presented thus far, plus it also showed little flag icons for the currencies, which I appreciate (though it depends on your combination of operating system, device and Web browser whether or not you see those). I have not reviewed the cited Forbes articles yet, nor the Indian Express article. Those two publications strike me as more reputable than CSUL Finance.
ChatGPT says the Lebanese pound (LBP) is weaker than the Iranian rial (IRR), but that could just as easily be true next week. On the strong currencies side of it, ChatGPT skipped over the Chilean unit of account (CLF), the special drawing rights (XDR), and the pounds of the Falkland Islands (FKP), Gibraltar (GIP) and St. Helena (SHP), so that the British pound (GBP) is on its top five strongest currencies.
I didn’t ask, but ChatGPT took pains to emphasize that a strong currency does not always mean a strong economy.
Examples:
Face value depends heavily on:
That gave me the idea for a weighted rate provider (which I will slowly work on without help from ChatGPT, Claude Code or any other A.I.). For example, the Japanese yen (JPY) would have a preset weight of 0.01, so that if US$1.00 exchanges to 100¥, those two currencies would be considered to be at par. That’s kind of how I thought about it when I was stationed in Okinawa many years ago. At the moment no other weights occur to me.
Almost the whole list
The following list omits the “unrecognized“ currencies listed above. The symbols in the third “column” come from Java’s currency information file for my locale, which is just the ISO-4217 letter code if the file doesn’t have a locale-specific symbol. ISO-4217 does not dictate locale-specific symbols for any currency.
CLF — Chilean Unit of Account (UF) — CLF — 0.02623
KWD — Kuwaiti Dinar — KWD — 0.3536
BHD — Bahraini Dinar — BHD — 0.4335
OMR — Omani Rial — OMR — 0.4433
JOD — Jordanian Dinar — JOD — 0.8175
XDR — Special Drawing Rights — XDR — 0.8478
FKP — Falkland Islands Pound — FKP — 0.8628
GIP — Gibraltar Pound — GIP — 0.8628
SHP — St. Helena Pound — SHP — 0.8628
GBP — British Pound — £ — 0.8628
CHF — Swiss Franc — CHF — 0.9041
KYD — Cayman Islands Dollar — KYD — 0.9608
EUR — Euro — € — 1.0
PAB — Panamanian Balboa — PAB — 1.153
BMD — Bermudan Dollar — BMD — 1.153
BSD — Bahamian Dollar — BSD — 1.153
USD — US Dollar — $ — 1.1531
SGD — Singapore Dollar — SGD — 1.473
BND — Brunei Dollar — BND — 1.473
CAD — Canadian Dollar — CA$ — 1.57
AUD — Australian Dollar — A$ — 1.625
BAM — Bosnia-Herzegovina Convertible Mark — BAM — 1.9558
BGN — Bulgarian Lev — BGN — 1.9558
AZN — Azerbaijani Manat — AZN — 1.9643
NZD — New Zealand Dollar — NZ$ — 1.9652
ANG — Netherlands Antillean Guilder — ANG — 2.0639
AWG — Aruban Florin — AWG — 2.0639
BZD — Belize Dollar — BZD — 2.306
BBD — Barbadian Dollar — BBD — 2.306
FJD — Fijian Dollar — FJD — 2.5403
TOP — Tongan Paʻanga — TOP — 2.7178
WST — Samoan Tala — WST — 3.0954
XCD — East Caribbean Dollar — EC$ — 3.1131
GEL — Georgian Lari — GEL — 3.1552
TND — Tunisian Dinar — TND — 3.3777
BYN — Belarusian Ruble — BYN — 3.3952
ILS — Israeli New Shekel — ₪ — 3.6135
PEN — Peruvian Sol — PEN — 3.9636
TMT — Turkmenistani Manat — TMT — 4.044
QAR — Qatari Riyal — QAR — 4.1969
AED — United Arab Emirates Dirham — AED — 4.2344
PLN — Polish Zloty — PLN — 4.2672
SAR — Saudi Riyal — SAR — 4.3238
MYR — Malaysian Ringgit — MYR — 4.5312
PGK — Papua New Guinean Kina — PGK — 4.984
RON — Romanian Leu — RON — 5.0938
BRL — Brazilian Real — R$ — 5.9785
LYD — Libyan Dinar — LYD — 7.3427
DKK — Danish Krone — DKK — 7.4635
HRK — Croatian Kuna — HRK — 7.5345
CNY — Chinese Yuan — CN¥ — 7.9316
BOB — Bolivian Boliviano — BOB — 8.0002
TTD — Trinidad & Tobago Dollar — TTD — 8.2331
GTQ — Guatemalan Quetzal — GTQ — 8.8592
HKD — Hong Kong Dollar — HK$ — 9.0213
SBD — Solomon Islands Dollar — SBD — 9.1454
MOP — Macanese Pataca — MOP — 9.2912
SEK — Swedish Krona — SEK — 10.7553
MAD — Moroccan Dirham — MAD — 10.8296
TJS — Tajikistani Somoni — TJS — 11.0255
NOK — Norwegian Krone — NOK — 11.1665
GHS — Ghanaian Cedi — GHS — 12.4901
BWP — Botswanan Pula — BWP — 16.177
SCR — Seychellois Rupee — SCR — 16.3277
ERN — Eritrean Nakfa — ERN — 17.2951
MVR — Maldivian Rufiyaa — MVR — 17.8635
SZL — Swazi Lilangeni — SZL — 19.273
LSL — Lesotho Loti — LSL — 19.273
NAD — Namibian Dollar — NAD — 19.273
ZAR — South African Rand — ZAR — 19.2744
MDL — Moldovan Leu — MDL — 19.9652
MXN — Mexican Peso — MX$ — 20.5288
ZMW — Zambian Kwacha — ZMW — 22.6196
CZK — Czech Koruna — CZK — 24.4271
STN — São Tomé & Príncipe Dobra — STN — 24.5
CUP — Cuban Peso — CUP — 27.6721
SLE — Sierra Leonean Leone — SLE — 28.0053
ZWL — Zimbabwean Dollar (2009) — ZWL — 29.6658
HNL — Honduran Lempira — HNL — 30.6329
TWD — New Taiwan Dollar — NT$ — 36.747
THB — Thai Baht — THB — 36.9749
NIO — Nicaraguan Córdoba — NIO — 42.5179
SRD — Surinamese Dollar — SRD — 43.4077
MRU — Mauritanian Ouguiya — MRU — 46.2614
UYU — Uruguayan Peso — UYU — 46.4227
TRY — Turkish Lira — TRY — 50.9336
UAH — Ukrainian Hryvnia — UAH — 51.1124
MUR — Mauritian Rupee — MUR — 52.9204
EGP — Egyptian Pound — EGP — 60.4188
MKD — Macedonian Denar — MKD — 61.695
PHP — Philippine Peso — ₱ — 68.5281
DOP — Dominican Peso — DOP — 70.4816
AFN — Afghan Afghani — AFN — 72.9191
MZN — Mozambican Metical — MZN — 73.5908
GMD — Gambian Dalasi — GMD — 85.5751
RUB — Russian Ruble — RUB — 91.632
ALL — Albanian Lek — ALL — 96.1954
KGS — Kyrgystani Som — KGS — 101.0179
INR — Indian Rupee — ₹ — 106.4397
BTN — Bhutanese Ngultrum — BTN — 106.4398
CVE — Cape Verdean Escudo — CVE — 110.265
RSD — Serbian Dinar — RSD — 117.431
XPF — CFP Franc — CFPF — 119.332
SYP — Syrian Pound — SYP — 129.8002
VUV — Vanuatu Vatu — VUV — 137.0809
BDT — Bangladeshi Taka — BDT — 141.4842
ISK — Icelandic Króna — ISK — 144.6099
KES — Kenyan Shilling — KES — 149.3689
HTG — Haitian Gourde — HTG — 151.259
DZD — Algerian Dinar — DZD — 152.1068
NPR — Nepalese Rupee — NPR — 170.3037
ETB — Ethiopian Birr — ETB — 180.8024
JMD — Jamaican Dollar — JMD — 182.2336
JPY — Japanese Yen — ¥ — 183.4976
DJF — Djiboutian Franc — DJF — 204.9132
LRD — Liberian Dollar — LRD — 211.4464
GYD — Guyanaese Dollar — GYD — 241.6014
YER — Yemeni Rial — YER — 275.6608
PKR — Pakistani Rupee — PKR — 322.4016
LKR — Sri Lankan Rupee — LKR — 358.6664
HUF — Hungarian Forint — HUF — 389.9298
AMD — Armenian Dram — AMD — 435.9894
KMF — Comorian Franc — KMF — 491.9678
VES — Venezuelan Bolívar — VES — 510.3415
SDG — Sudanese Pound — SDG — 515.9563
CRC — Costa Rican Colón — CRC — 545.7767
KZT — Kazakhstani Tenge — KZT — 565.8313
XOF — West African CFA Franc — F CFA — 655.957
XAF — Central African CFA Franc — FCFA — 655.957
SOS — Somali Shilling — SOS — 659.1173
CLP — Chilean Peso — CLP — 1036.8291
AOA — Angolan Kwanza — AOA — 1085.3403
IQD — Iraqi Dinar — IQD — 1512.5897
NGN — Nigerian Naira — NGN — 1608.5096
ARS — Argentine Peso — ARS — 1674.4515
RWF — Rwandan Franc — RWF — 1686.0743
KRW — South Korean Won — ₩ — 1710.6039
MWK — Malawian Kwacha — MWK — 2010.1271
MMK — Myanmar Kyat — MMK — 2426.2629
CDF — Congolese Franc — CDF — 2621.8222
TZS — Tanzanian Shilling — TZS — 3012.7957
BIF — Burundian Franc — BIF — 3439.3135
MNT — Mongolian Tugrik — MNT — 4093.3733
COP — Colombian Peso — COP — 4274.2954
UGX — Ugandan Shilling — UGX — 4317.5242
KHR — Cambodian Riel — KHR — 4657.1842
MGA — Malagasy Ariary — MGA — 4783.7407
SSP — South Sudanese Pound — SSP — 5291.9469
PYG — Paraguayan Guarani — PYG — 7519.181
GNF — Guinean Franc — GNF — 10109.2142
UZS — Uzbekistani Som — UZS — 14062.0046
IDR — Indonesian Rupiah — IDR — 19449.7481
LAK — Laotian Kip — LAK — 24959.6069
SLL — Sierra Leonean Leone (1964—2022) — SLL — 28005.375
VND — Vietnamese Dong — ₫ — 30060.4479
LBP — Lebanese Pound — LBP — 103193.9458
IRR — Iranian Rial — IRR — 1113312.7927


