placestats

Corruption Perceptions Index vs. Infrastructure score

Fades after adjusting for income

Across 174 countries, Corruption Perceptions Index and Infrastructure score rise and fall together at r = +0.65 (on a scale from −1 to +1, where 0 means no link). Comparing only countries with similar income (GDP per person) shrinks it to +0.03, which could easily be chance (q = 0.82, allowing for the many pairs tested, and allowing for countries in the same region being alike). So the first figure mostly shows richer countries differing from poorer ones, not a link between these two things. Caution: sign flips when a single country is removed.

Comparing countries across the middle half of corruption perceptions index, 30 to 57 points, infrastructure score is better by 0.634 typical gaps at the top of that range than the bottom. Comparing only countries with similar national income, the gap is 0.0178 typical gaps.

Link before adjusting (r)+0.652p = 1.8e-22 · 174 countries
After adjusting for national income+0.032p = 0.675 · likely range [-0.12, +0.18]
p, allowing for regions0.695standard error 0.078 · 7 regions
Check for luck (q)0.819across 12,497 pairs

How to read these.r runs from −1 (one goes up as the other goes down) to +1 (they rise together), and 0 means no link. Adjusting for national income means comparing countries with the same GDP per person, so differences in wealth can’t explain the link. Income is used in percentage terms, since an extra $1,000 means more to a poor country than to a rich one. p is how likely a link this strong would be if there were really none. Below 0.05 means it is unlikely to be chance. Very small values are written in short form: 1.1e-32 means a decimal point followed by 31 zeros and then 11, so very close to zero. The likely range is where the true figure probably lies, and a range that crosses zero means the link could easily be chance. Countries in the same region tend to resemble each other, so the third figure allows for that, which gives a fairer p. The standard error is the typical size of the error in r. Finally, testing this many pairs means some will look strong by luck alone. A q below 0.05 means this link is unlikely to be one of those.

Corruption Perceptions Index · index (0-100, higher = cleaner)link with income +0.72 · high
Infrastructure score · typical gaps (standard deviations)link with income +0.90 · proxy

Both of these rise and fall closely with national income, so a strong link between them before adjusting was close to certain. Read the adjusted figure, not the first one.

“Link with income” is how closely each measure tracks GDP per person across countries, from −1 to +1.

Every country as a dot

Corruption Perceptions Index · index (0-100, higher = cleaner) →Infrastructure score · typical gaps (standard deviations) →990-1.011.72Afghanistan: 17 index (0-100, higher = cleaner), 0.116 typical gaps (standard deviations)Angola: 32 index (0-100, higher = cleaner), -0.152 typical gaps (standard deviations)Albania: 42 index (0-100, higher = cleaner), 1.14 typical gaps (standard deviations)United Arab Emirates: 68 index (0-100, higher = cleaner), 1.61 typical gaps (standard deviations)Argentina: 37 index (0-100, higher = cleaner), 1.25 typical gaps (standard deviations)Armenia: 47 index (0-100, higher = cleaner), 1.09 typical gaps (standard deviations)Australia: 77 index (0-100, higher = cleaner), 1.5 typical gaps (standard deviations)Austria: 67 index (0-100, higher = cleaner), 1.37 typical gaps (standard deviations)Azerbaijan: 22 index (0-100, higher = cleaner), 1.19 typical gaps (standard deviations)Burundi: 17 index (0-100, higher = cleaner), -0.835 typical gaps (standard deviations)Belgium: 69 index (0-100, higher = cleaner), 1.64 typical gaps (standard deviations)Benin: 45 index (0-100, higher = cleaner), 0.00537 typical gaps (standard deviations)Burkina Faso: 41 index (0-100, higher = cleaner), -0.245 typical gaps (standard deviations)Bangladesh: 23 index (0-100, higher = cleaner), 0.649 typical gaps (standard deviations)Bulgaria: 43 index (0-100, higher = cleaner), 1.25 typical gaps (standard deviations)Bahrain: 53 index (0-100, higher = cleaner), 1.17 typical gaps (standard deviations)Bahamas, The: 65 index (0-100, higher = cleaner), 1.25 typical gaps (standard deviations)Bosnia and Herzegovina: 33 index (0-100, higher = cleaner), 1.29 typical gaps (standard deviations)Belarus: 33 index (0-100, higher = cleaner), 1.48 typical gaps (standard deviations)Bolivia: 28 index (0-100, higher = cleaner), 0.886 typical gaps (standard deviations)Brazil: 34 index (0-100, higher = cleaner), 1.18 typical gaps (standard deviations)Barbados: 68 index (0-100, higher = cleaner), 1.31 typical gaps (standard deviations)Brunei Darussalam: 60 index (0-100, higher = cleaner), 1.22 typical gaps (standard deviations)Bhutan: 72 index (0-100, higher = cleaner), 0.847 typical gaps (standard deviations)Botswana: 57 index (0-100, higher = cleaner), 0.5 typical gaps (standard deviations)Central African Republic: 24 index (0-100, higher = cleaner), -1.01 typical gaps (standard deviations)Canada: 75 index (0-100, higher = cleaner), 1.56 typical gaps (standard deviations)Switzerland: 81 index (0-100, higher = cleaner), 1.7 typical gaps (standard deviations)Chile: 63 index (0-100, higher = cleaner), 1.25 typical gaps (standard deviations)China: 43 index (0-100, higher = cleaner), 1.66 typical gaps (standard deviations)Cote d'Ivoire: 45 index (0-100, higher = cleaner), 0.207 typical gaps (standard deviations)Cameroon: 26 index (0-100, higher = cleaner), 0.557 typical gaps (standard deviations)Congo, Dem. Rep.: 20 index (0-100, higher = cleaner), -0.672 typical gaps (standard deviations)Congo, Rep.: 23 index (0-100, higher = cleaner), 0.312 typical gaps (standard deviations)Colombia: 39 index (0-100, higher = cleaner), 1.01 typical gaps (standard deviations)Comoros: 21 index (0-100, higher = cleaner), 0.259 typical gaps (standard deviations)Cabo Verde: 62 index (0-100, higher = cleaner), 0.806 typical gaps (standard deviations)Costa Rica: 58 index (0-100, higher = cleaner), 1.19 typical gaps (standard deviations)Cyprus: 56 index (0-100, higher = cleaner), 1.47 typical gaps (standard deviations)Czechia: 56 index (0-100, higher = cleaner), 1.48 typical gaps (standard deviations)Germany: 75 index (0-100, higher = cleaner), 1.65 typical gaps (standard deviations)Djibouti: 31 index (0-100, higher = cleaner), 0.0105 typical gaps (standard deviations)Dominica: 60 index (0-100, higher = cleaner), 1.01 typical gaps (standard deviations)Denmark: 90 index (0-100, higher = cleaner), 1.65 typical gaps (standard deviations)Dominican Republic: 36 index (0-100, higher = cleaner), 0.956 typical gaps (standard deviations)Algeria: 34 index (0-100, higher = cleaner), 0.932 typical gaps (standard deviations)Ecuador: 32 index (0-100, higher = cleaner), 0.989 typical gaps (standard deviations)Egypt, Arab Rep.: 30 index (0-100, higher = cleaner), 0.864 typical gaps (standard deviations)Spain: 56 index (0-100, higher = cleaner), 1.55 typical gaps (standard deviations)Estonia: 76 index (0-100, higher = cleaner), 1.45 typical gaps (standard deviations)Ethiopia: 37 index (0-100, higher = cleaner), -0.309 typical gaps (standard deviations)Finland: 88 index (0-100, higher = cleaner), 1.48 typical gaps (standard deviations)Fiji: 55 index (0-100, higher = cleaner), 0.665 typical gaps (standard deviations)France: 67 index (0-100, higher = cleaner), 1.7 typical gaps (standard deviations)Gabon: 27 index (0-100, higher = cleaner), 0.665 typical gaps (standard deviations)United Kingdom: 71 index (0-100, higher = cleaner), 1.6 typical gaps (standard deviations)Georgia: 53 index (0-100, higher = cleaner), 1.29 typical gaps (standard deviations)Ghana: 42 index (0-100, higher = cleaner), 0.59 typical gaps (standard deviations)Guinea: 28 index (0-100, higher = cleaner), 0.156 typical gaps (standard deviations)Gambia, The: 38 index (0-100, higher = cleaner), 0.215 typical gaps (standard deviations)Guinea-Bissau: 21 index (0-100, higher = cleaner), -0.158 typical gaps (standard deviations)Equatorial Guinea: 13 index (0-100, higher = cleaner), -0.269 typical gaps (standard deviations)Greece: 49 index (0-100, higher = cleaner), 1.57 typical gaps (standard deviations)Grenada: 56 index (0-100, higher = cleaner), 1.09 typical gaps (standard deviations)Guatemala: 25 index (0-100, higher = cleaner), 0.576 typical gaps (standard deviations)Guyana: 39 index (0-100, higher = cleaner), 0.809 typical gaps (standard deviations)Hong Kong SAR, China: 74 index (0-100, higher = cleaner), 1.57 typical gaps (standard deviations)Honduras: 22 index (0-100, higher = cleaner), 0.417 typical gaps (standard deviations)Croatia: 47 index (0-100, higher = cleaner), 1.28 typical gaps (standard deviations)Haiti: 16 index (0-100, higher = cleaner), -0.312 typical gaps (standard deviations)Hungary: 41 index (0-100, higher = cleaner), 1.5 typical gaps (standard deviations)Indonesia: 37 index (0-100, higher = cleaner), 0.742 typical gaps (standard deviations)India: 38 index (0-100, higher = cleaner), 0.527 typical gaps (standard deviations)Ireland: 77 index (0-100, higher = cleaner), 1.43 typical gaps (standard deviations)Iran, Islamic Rep.: 23 index (0-100, higher = cleaner), 0.97 typical gaps (standard deviations)Iraq: 26 index (0-100, higher = cleaner), 1.04 typical gaps (standard deviations)Iceland: 77 index (0-100, higher = cleaner), 1.53 typical gaps (standard deviations)Israel: 64 index (0-100, higher = cleaner), 1.31 typical gaps (standard deviations)Italy: 54 index (0-100, higher = cleaner), 1.36 typical gaps (standard deviations)Jamaica: 44 index (0-100, higher = cleaner), 1.06 typical gaps (standard deviations)Jordan: 49 index (0-100, higher = cleaner), 0.776 typical gaps (standard deviations)Japan: 71 index (0-100, higher = cleaner), 1.45 typical gaps (standard deviations)Kazakhstan: 40 index (0-100, higher = cleaner), 1.09 typical gaps (standard deviations)Kenya: 32 index (0-100, higher = cleaner), 0.22 typical gaps (standard deviations)Kyrgyz Republic: 25 index (0-100, higher = cleaner), 0.943 typical gaps (standard deviations)Cambodia: 21 index (0-100, higher = cleaner), 0.689 typical gaps (standard deviations)Korea, Rep.: 64 index (0-100, higher = cleaner), 1.72 typical gaps (standard deviations)Kuwait: 46 index (0-100, higher = cleaner), 0.878 typical gaps (standard deviations)Lao PDR: 33 index (0-100, higher = cleaner), 0.399 typical gaps (standard deviations)Lebanon: 22 index (0-100, higher = cleaner), 0.731 typical gaps (standard deviations)Liberia: 27 index (0-100, higher = cleaner), -0.767 typical gaps (standard deviations)Libya: 13 index (0-100, higher = cleaner), 0.512 typical gaps (standard deviations)St. Lucia: 59 index (0-100, higher = cleaner), 0.881 typical gaps (standard deviations)Sri Lanka: 32 index (0-100, higher = cleaner), 0.669 typical gaps (standard deviations)Lesotho: 37 index (0-100, higher = cleaner), -0.0187 typical gaps (standard deviations)Lithuania: 63 index (0-100, higher = cleaner), 1.29 typical gaps (standard deviations)Luxembourg: 81 index (0-100, higher = cleaner), 1.59 typical gaps (standard deviations)Latvia: 59 index (0-100, higher = cleaner), 1.28 typical gaps (standard deviations)Morocco: 37 index (0-100, higher = cleaner), 0.928 typical gaps (standard deviations)Moldova: 43 index (0-100, higher = cleaner), 1.23 typical gaps (standard deviations)Madagascar: 26 index (0-100, higher = cleaner), -0.434 typical gaps (standard deviations)Maldives: 38 index (0-100, higher = cleaner), 1.11 typical gaps (standard deviations)Mexico: 26 index (0-100, higher = cleaner), 1.13 typical gaps (standard deviations)North Macedonia: 40 index (0-100, higher = cleaner), 1.36 typical gaps (standard deviations)Mali: 27 index (0-100, higher = cleaner), -0.495 typical gaps (standard deviations)Malta: 46 index (0-100, higher = cleaner), 1.63 typical gaps (standard deviations)Myanmar: 16 index (0-100, higher = cleaner), 0.298 typical gaps (standard deviations)Montenegro: 46 index (0-100, higher = cleaner), 1.37 typical gaps (standard deviations)Mongolia: 33 index (0-100, higher = cleaner), 1.03 typical gaps (standard deviations)Mozambique: 25 index (0-100, higher = cleaner), -0.592 typical gaps (standard deviations)Mauritania: 30 index (0-100, higher = cleaner), 0.0018 typical gaps (standard deviations)Mauritius: 51 index (0-100, higher = cleaner), 1.17 typical gaps (standard deviations)Malawi: 34 index (0-100, higher = cleaner), -0.672 typical gaps (standard deviations)Malaysia: 50 index (0-100, higher = cleaner), 1.09 typical gaps (standard deviations)Namibia: 49 index (0-100, higher = cleaner), 0.203 typical gaps (standard deviations)Niger: 34 index (0-100, higher = cleaner), -0.7 typical gaps (standard deviations)Nigeria: 26 index (0-100, higher = cleaner), -0.0861 typical gaps (standard deviations)Nicaragua: 14 index (0-100, higher = cleaner), 0.574 typical gaps (standard deviations)Netherlands: 78 index (0-100, higher = cleaner), 1.63 typical gaps (standard deviations)Norway: 81 index (0-100, higher = cleaner), 1.68 typical gaps (standard deviations)Nepal: 34 index (0-100, higher = cleaner), 0.616 typical gaps (standard deviations)New Zealand: 83 index (0-100, higher = cleaner), 1.51 typical gaps (standard deviations)Oman: 55 index (0-100, higher = cleaner), 1.03 typical gaps (standard deviations)Pakistan: 27 index (0-100, higher = cleaner), 0.386 typical gaps (standard deviations)Panama: 33 index (0-100, higher = cleaner), 0.927 typical gaps (standard deviations)Peru: 31 index (0-100, higher = cleaner), 0.907 typical gaps (standard deviations)Philippines: 33 index (0-100, higher = cleaner), 0.696 typical gaps (standard deviations)Papua New Guinea: 31 index (0-100, higher = cleaner), -0.611 typical gaps (standard deviations)Poland: 53 index (0-100, higher = cleaner), 1.24 typical gaps (standard deviations)Puerto Rico (US): 63 index (0-100, higher = cleaner), 1.14 typical gaps (standard deviations)Portugal: 57 index (0-100, higher = cleaner), 1.6 typical gaps (standard deviations)Paraguay: 24 index (0-100, higher = cleaner), 0.928 typical gaps (standard deviations)Qatar: 59 index (0-100, higher = cleaner), 1.06 typical gaps (standard deviations)Romania: 46 index (0-100, higher = cleaner), 1.45 typical gaps (standard deviations)Russian Federation: 22 index (0-100, higher = cleaner), 1.32 typical gaps (standard deviations)Rwanda: 57 index (0-100, higher = cleaner), 0.0662 typical gaps (standard deviations)Saudi Arabia: 59 index (0-100, higher = cleaner), 1.67 typical gaps (standard deviations)Sudan: 15 index (0-100, higher = cleaner), -0.572 typical gaps (standard deviations)Senegal: 45 index (0-100, higher = cleaner), 0.482 typical gaps (standard deviations)Singapore: 84 index (0-100, higher = cleaner), 1.33 typical gaps (standard deviations)Solomon Islands: 43 index (0-100, higher = cleaner), 0.0941 typical gaps (standard deviations)Sierra Leone: 33 index (0-100, higher = cleaner), -0.336 typical gaps (standard deviations)El Salvador: 30 index (0-100, higher = cleaner), 0.822 typical gaps (standard deviations)Somalia, Fed. Rep.: 9 index (0-100, higher = cleaner), -0.395 typical gaps (standard deviations)Serbia: 35 index (0-100, higher = cleaner), 1.38 typical gaps (standard deviations)Sao Tome and Principe: 45 index (0-100, higher = cleaner), 0.187 typical gaps (standard deviations)Suriname: 40 index (0-100, higher = cleaner), 0.901 typical gaps (standard deviations)Slovak Republic: 49 index (0-100, higher = cleaner), 1.4 typical gaps (standard deviations)Slovenia: 60 index (0-100, higher = cleaner), 1.42 typical gaps (standard deviations)Sweden: 80 index (0-100, higher = cleaner), 1.57 typical gaps (standard deviations)Eswatini: 27 index (0-100, higher = cleaner), 0.534 typical gaps (standard deviations)Seychelles: 72 index (0-100, higher = cleaner), 1.35 typical gaps (standard deviations)Syrian Arab Republic: 12 index (0-100, higher = cleaner), 0.27 typical gaps (standard deviations)Chad: 21 index (0-100, higher = cleaner), -0.72 typical gaps (standard deviations)Togo: 32 index (0-100, higher = cleaner), -0.0274 typical gaps (standard deviations)Thailand: 34 index (0-100, higher = cleaner), 1.06 typical gaps (standard deviations)Tajikistan: 19 index (0-100, higher = cleaner), 0.389 typical gaps (standard deviations)Turkmenistan: 17 index (0-100, higher = cleaner), 0.294 typical gaps (standard deviations)Timor-Leste: 44 index (0-100, higher = cleaner), 0.389 typical gaps (standard deviations)Trinidad and Tobago: 41 index (0-100, higher = cleaner), 1.22 typical gaps (standard deviations)Tunisia: 39 index (0-100, higher = cleaner), 0.956 typical gaps (standard deviations)Turkiye: 34 index (0-100, higher = cleaner), 1.19 typical gaps (standard deviations)Tanzania: 41 index (0-100, higher = cleaner), -0.0741 typical gaps (standard deviations)Uganda: 26 index (0-100, higher = cleaner), -0.319 typical gaps (standard deviations)Ukraine: 35 index (0-100, higher = cleaner), 0.97 typical gaps (standard deviations)Uruguay: 76 index (0-100, higher = cleaner), 1.41 typical gaps (standard deviations)United States: 65 index (0-100, higher = cleaner), 1.53 typical gaps (standard deviations)Uzbekistan: 32 index (0-100, higher = cleaner), 1.42 typical gaps (standard deviations)St. Vincent and the Grenadines: 63 index (0-100, higher = cleaner), 1.22 typical gaps (standard deviations)Viet Nam: 40 index (0-100, higher = cleaner), 1.17 typical gaps (standard deviations)Vanuatu: 50 index (0-100, higher = cleaner), -0.0444 typical gaps (standard deviations)South Africa: 41 index (0-100, higher = cleaner), 0.709 typical gaps (standard deviations)Zambia: 39 index (0-100, higher = cleaner), -0.161 typical gaps (standard deviations)Zimbabwe: 21 index (0-100, higher = cleaner), 0.0863 typical gaps (standard deviations)AZEBDIBLRCAFCHEDNKFINMWINERRUSRWASOM

best-fit line line after adjusting

Four ways to measure the link

MethodrpCountries
Standard (Pearson), not adjusted+0.6521.8e-22174
By rank (Spearman), not adjusted+0.7006.1e-27174
Standard (Pearson), adjusted for national income+0.0320.675174
By rank (Spearman), adjusted for national income+0.1490.051174

The rank version uses only each country’s place in line, from lowest to highest, so a few extreme countries count for less. The adjusted and unadjusted versions use the same 174 countries: those that report both measures and GDP per person. So the gap between them comes from the adjustment, not from a change in which countries are counted. Drop in the size of r after adjusting: +0.620 (a minus sign means it grew).

How solid is it?

Leaving out one country at a time, r ranges from -0.015 (without GNQ) to +0.049 (without SGP). The bar above shows that range on a scale from −1 to +1, with the solid line at the full result. The single country that moves r most: GNQ (-0.047).

Fragile: this link may not hold up.
  • sign flips when a single country is removed
  • direction is not consistent across regions

Within each region

Countries are not separate, unrelated cases, and neighbors share a lot. A link that holds inside each region is far more believable than one that shows up only when comparing regions.

nr
East Asia & Pacific22-0.12
Europe & Central Asia48+0.29
Latin America & Caribbean29+0.47
Middle East, North Africa, Afghanistan & Pakistan21+0.20
Sub-Saharan Africa46+0.38

By income third

If the link shows up only in the richest third of countries, it is a feature of rich countries, not a general pattern.

nr
Poorest third58-0.05
Middle third58+0.24
Richest third58+0.51

By largest religious group

Countries grouped by a label they share, such as main religion, rather than by a number. Groups of fewer than twelve countries are not shown. These groups differ in income, region and history all at once. So a gap between them is a place to start asking questions, not an answer.

nr
Christians104+0.09
Muslims48-0.08

By last european coloniser

Countries grouped by a label they share, such as main religion, rather than by a number. Groups of fewer than twelve countries are not shown. These groups differ in income, region and history all at once. So a gap between them is a place to start asking questions, not an answer.

nr
France25+0.01
Never a European colony21+0.05
Spain19+0.56
United Kingdom55+0.30

Without outliers (countries far outside the middle half of countries on either measure, by more than one and a half times the width of that middle half): r = +0.032 after dropping 0 countries.

Two series, one country

Both measures over the years for one country you pick. The two charts are stacked so they share only the years along the bottom.

Loading…

Over time, within countries

Everything above compares countries with each other at one moment. This section compares each country only with itself over 0years. So a link here can’t come from anything about a country that stays the same, such as its history, geography, institutions or culture.

Not enough history inside each country to look at this over time. That needs countries measured for several years in a row, and at least one of these measures is measured too rarely.

The data


index (0-100, higher = cleaner)

typical gaps (standard deviations)
Years
Denmark DNK901.652024
Finland FIN881.482024
Singapore SGP841.332024
New Zealand NZL831.512024
Norway NOR811.682024
Luxembourg LUX811.592024
Switzerland CHE811.72024
Sweden SWE801.572024
Netherlands NLD781.632024
Iceland ISL771.532024
Ireland IRL771.432024
Australia AUS771.52024
Uruguay URY761.412024
Estonia EST761.452024
Germany DEU751.652024

Transparency International, Corruption Perceptions Index
wdi
One of these measures is published under a licence that forbids changes. Values are shown exactly as published and must not be republished in a changed or rescaled form.

Sources

Corruption Perceptions Index

Corruption Perceptions Index

Transparency International · via Our World in Data · CC BY-ND 4.0 · updated annual · comparable from 2012 only

Measures how corrupt the public sector is believed to be, based on 13 surveys of experts and business people. Some of the same surveys feed the Worldwide Governance Indicators' Control of Corruption measure, so the two share ingredients.

Infrastructure score

Infrastructure score

PlaceStats · via PlaceStats · Derived work; each member keeps its own licence · updated recomputed with the panel

The average of 5 measures from 1 publisher. Each measure is first put on a common scale: 0 is the average country in an average year, and 1 is a typical gap between countries (a standard deviation). Each is turned so that higher is better. Measures are averaged within each publisher first, so a publisher with many measures does not count for more. Members: Electricity access, Slum share of urban population, Mobile subscriptions, Fixed broadband, Internet users.

How this was computed

Data used: most recent value in 2010-2025; values come from 2014–2024. To adjust for income, each measure is first predicted from GDP per person (in percentage terms, on a log scale) with a straight-line fit. Only what is left over is then compared. This is called a partial correlation. The line is drawn the standard way (ordinary least squares), which picks the line that comes closest to all the countries at once. The error margins allow for countries in the same region resembling each other, using 7 World Bank regions. The q-value corrects for testing all 12,497 pairs at once, using the Benjamini–Hochberg method. Underlying data last updated DYB 2024. How the country data works · explore Corruption Perceptions Index and Infrastructure score

This page shows that two measures go together. It does not show that Corruption Perceptions Index changes Infrastructure score, or the reverse. These figures also describe countries, not individual people. See the ecological fallacy.

More links with Corruption Perceptions Index or Infrastructure score