diff --git a/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/LocationUtils.java b/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/LocationUtils.java
index 0e27df4e12e7f33f8850f9d14c0e1425c3ac3e65..637f515b85e8584382d69e34932400222cf83a88 100644
--- a/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/LocationUtils.java
+++ b/onionwrapper-core/src/main/java/org/briarproject/onionwrapper/LocationUtils.java
@@ -2,6 +2,8 @@ package org.briarproject.onionwrapper;
 
 import org.briarproject.nullsafety.NotNullByDefault;
 
+import java.util.Locale;
+
 @NotNullByDefault
 public interface LocationUtils {
 
@@ -13,4 +15,20 @@ public interface LocationUtils {
      * https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2">ISO 3166-1 alpha 2</a>.
      */
     String getCurrentCountry();
+
+    /**
+     * Returns the name of the country for display in the UI
+     * or the isoCode if none could be found.
+     *
+     * @param isoCode The result from {@link #getCurrentCountry()}.
+     */
+    static String getCountryDisplayName(String isoCode) {
+        for (Locale locale : Locale.getAvailableLocales()) {
+            if (locale.getCountry().equalsIgnoreCase(isoCode)) {
+                return locale.getDisplayCountry();
+            }
+        }
+        // Name is unknown
+        return isoCode;
+    }
 }