United States territories have Emoji flags—but the states themselves don’t! In the meantime, which national flags can be repurposed as “close enough” U.S. state flags for text messaging?

Background:

Certain sequences of Unicode characters are displayed as flags. Although most flag emoji are national flags, there are also a few other types, like the European Union flag (🇪🇺), U.S. territory flags (e.g. Puerto Rico: 🇵🇷), and a pirate flag (🏴‍☠️).

The Issue:

Although U.S. territories have emoji, states do not! This is a bit of a surprise, since so many large tech companies are in the United States.

Contrary to what you might expect, the determination of which countries get a flag—and what the flag looks like—is an issue determined by your phone / computer manufacturer. See Figure 1 for an example of where the emoji flag has become de-synchronized with the flag actually used.


Fig. 1: Although this is (as of September 2023) still the most common emoji for “flag of Afghanistan,” this de-facto national flag—the one you would see in the capital city—has changed.

Proposal:

Since the the determination of which countries / states / etc. get a flag is entirely dictated by software companies, there’s no reason for them to not also add U.S. states to the mix!

In the meantime, however, residents in U.S. states must make do by diabolically repurposing the flags of other countries for their own ends.

Figure 2 shows a three-column chart of all U.S. states (plus Washington, D.C.) plus an adequate “somewhat close” existing emoji flag that can be used by residents of that state as a stopgap measure.

(Note that U.S. territories are not present here because they already have their own emoji flags.)


Fig. 2: Each entry above consists of a U.S. state (left) and a vaguely-similar existing emoji flag (right). Some of these are surprisingly close matches (e.g. Iowa and France, or Texas and Chile), but many require a bit of squinting / creative interpretation.

Interesting Bonus Problem:

If an emoji changes what it looks like, it changes all messages containing that emoji, past and present. So if someone wrote a post that says “I love <Country Flag>” and then, later, the country is taken over by fascists and the flag is changed to a boot stomping on a pile of human skulls, the user’s post would now say “I love <Boot stomping on human skulls>.”

PROS: This should serve as a stopgap measure until such time as U.S. states get their own emoji.

CONS: May cause confusion if someone is like “I’m going to (flag of Chile)” when they actually mean they’re going to Texas.

P.S. Here is the Emoji data above as a JavaScript data structure:

<SCRIPT language="JavaScript">
const STATE_DATA = {  // 50 states + Washington D.C.
"Alabama"          : { "emoji":"🏴󠁧󠁢󠁥󠁮󠁧󠁿", "from": "England" }  ,
"Alaska"           : { "emoji":"🇽🇰", "from": "Kosovo" }  ,
"Arizona"          : { "emoji":"🇲🇰", "from": "North Macedonia" }  ,
"Arkansas"         : { "emoji":"🇧🇷", "from": "Brazil" }  ,
"California"       : { "emoji":"🇵🇱", "from": "Poland" }  ,
"Colorado"         : { "emoji":"🇬🇱", "from": "Greenland" }  ,
"Connecticut"      : { "emoji":"🇦🇶", "from": "Antarctica" }  ,
"Delaware"         : { "emoji":"🇷🇼", "from": "Rwanda" }  ,
"Florida"          : { "emoji":"🇯🇪", "from": "Jersey" }  ,
"Georgia"          : { "emoji":"🇱🇻", "from": "Latvia" }  ,
"Hawaii"           : { "emoji":"🇮🇴", "from": "British Indian Ocean Territory" }  ,
"Idaho"            : { "emoji":"🇵🇲", "from": "St. Pierre and Miquelon (collectivity of France)" }  ,
"Illinois"         : { "emoji":"🇧🇱", "from": "St. Barthelemy (collectivity of France)" }  ,
"Indiana"          : { "emoji":"🇪🇺", "from": "European Union" }  ,
"Iowa"             : { "emoji":"🇫🇷", "from": "France" }  ,
"Kansas"           : { "emoji":"🇧🇧", "from": "Barbados" }  ,
"Kentucky"         : { "emoji":"🇺🇳", "from": "United Nations" }  ,
"Louisiana"        : { "emoji":"🇱🇨", "from": "St. Lucia" }  ,
"Maine"            : { "emoji":"🇦🇷", "from": "Argentina" }  ,
"Maryland"         : { "emoji":"🇺🇬", "from": "Uganda" }  ,
"Massachusetts"    : { "emoji":"🇾🇹", "from": "Mayotte (overseas department of France)" }  ,
"Michigan"         : { "emoji":"🇹🇨", "from": "Turks and Caicos Islands" }  ,
"Minnesota"        : { "emoji":"🇲🇵", "from": "Northern Mariana Islands" }  ,
"Mississippi"      : { "emoji":"🇲🇳", "from": "Mongolia" }  ,
"Missouri"         : { "emoji":"🇵🇾", "from": "Paraguay" }  ,
"Montana"          : { "emoji":"🇵🇼", "from": "Palau" }  ,
"Nebraska"         : { "emoji":"🇫🇯", "from": "Fiji" }  ,
"Nevada"           : { "emoji":"🇨🇽", "from": "Christmas Island" }  ,
"New Hampshire"    : { "emoji":"🇱🇦", "from": "Laos" }  ,
"New Jersey"       : { "emoji":"🇲🇩", "from": "Moldova" }  ,
"New Mexico"       : { "emoji":"🇳🇺", "from": "Niue (territory of New Zealand)" }  ,
"New York"         : { "emoji":"🇬🇸", "from": "South Georgia &amp; South Sandwich Islands" }  ,
"North Carolina"   : { "emoji":"🇮🇩", "from": "Indonesia" }  ,
"North Dakota"     : { "emoji":"🇪🇪", "from": "Estonia" }  ,
"Ohio"             : { "emoji":"🇳🇵", "from": "Nepal" }  ,
"Oklahoma"         : { "emoji":"🇰🇿", "from": "Kazakhstan" }  ,
"Oregon"           : { "emoji":"🇬🇵", "from": "Guadeloupe (overseas department of France)" }  ,
"Pennsylvania"     : { "emoji":"🇱🇮", "from": "Liechtenstein" }  ,
"Rhode Island"     : { "emoji":"🇨🇾", "from": "Cyprus" }  ,
"South Carolina"   : { "emoji":"🇹🇷", "from": "Turkey" }  ,
"South Dakota"     : { "emoji":"🇸🇴", "from": "Somalia" }  ,
"Tennessee"        : { "emoji":"🇹🇳", "from": "Tunisia" }  ,
"Texas"            : { "emoji":"🇨🇱", "from": "Chile" }  ,
"Utah"             : { "emoji":"🇫🇲", "from": "Micronesia" }  ,
"Vermont"          : { "emoji":"🇦🇼", "from": "Aruba" }  ,
"Virginia"         : { "emoji":"🇧🇿", "from": "Belize" }  ,
"Washington"       : { "emoji":"🇲🇴", "from": "Macau" }  ,
"Washington, D.C." : { "emoji":"🇵🇪", "from": "Peru" }  ,  // (D.C.: not a state)
"West Virginia"    : { "emoji":"🇨🇷", "from": "Costa Rica" }  ,
"Wisconsin"        : { "emoji":"🇳🇷", "from": "Nauru" }  ,
"Wyoming"          : { "emoji":"🇨🇻", "from": "Cape Verde" }  
};
</SCRIPT>