How I Solved This: Easy Image Flags with Emoji


Welcome to another post in the “How I Solved This” series. In this series, we do a deep dive into a specific business problem and share how one #AwesomeAdmin chose to solve it. Once you learn how they solved their specific problem, you’ll be inspired to try their solution yourself! Let’s take a look at how Michael Kolodner was able to make graphical flags on Salesforce data without document storage or image tags. 

Key business problem 

Sometimes, text or numbers just aren’t evocative enough to catch users’ attention at the right moment. Whether it’s in a single field, a compact layout, or a big flashing section of a page layout, there are always moments when it would be nice to have an image that conveys meaning in an instant. Research shows that our brains process images much faster than words or numbers. And if you’ve got a solid wall of numbers or words in front of you, it takes a lot of cognitive work to try to make sense of it.

For example, the Academy Group is tracking several measures of student well-being and academic success, from GPA and school attendance to engagement with Academy Group programming and advisor assessments of well-being. Each of those metrics is calculated differently, whether attendance (a percentage), GPA (out of 4), or a count of concerns by advisors (a number). And for each metric, the cutoffs dividing low, medium, and high risk are different. Looking at numbers for all of these metrics together on a report, it’s nearly impossible to parse the different meanings. And even with text indicating the level of risk, it becomes a wall of unreadable characters. 

Four columns of different student metrics, each showing a number and the word “risk,” “warning,” or “safe

There are existing solutions for putting graphical image flags into a Salesforce field. We can add badges using static resources, as noted in this NPSP best practice post and this Trailhead module. Those are great tips and they certainly work, but they can be a pain to maintain. And when you’re in the formula field, you don’t actually get the image that is going to display; all you get is the file name. Luckily, emoji are ready on your keyboard at any time, and when you put them into a formula, you’ll have the exact result right on screen!

How I solved it

Let’s go back to the Academy Group tracking several measures of student success. By adding in an image flag, it’s instantly clear whether each measure is in a problem zone or not:

Four columns of different student metrics, each accompanied by an emoji for danger (a red dot), warning (yellow triangle with exclamation mark), or safe (green checkmark)

In fact, you can start to make sense of a whole report at a glance (even when we shrink it for display as a screenshot):

Many columns and rows of student metrics, each accompanied by an emoji for danger, warning, or safe

How did I do it?

Emoji aren’t just for texting anymore. They’ve available on any computer. (On a Mac, just hit Command+Ctrl+Space and the Emoji keyboard pops up!) You can use emoji anywhere you would normally use a text character like a letter, number, or punctuation mark.

Basically, the hardest part of the formula for each of those fields was deciding which emoji would represent each category. There are a lot of emoji to choose from, and I wanted three that went well together while adequately expressing the meanings to our users. For this chart of student support flags, I found three great options:

✅ Safe
⚠️ Warning
? Danger

Here’s the formula field that takes the value from Current GPA (a roll-up summary field) and gives the Flag: GPA field that’s on the report:

TEXT(Current_GPA__c) & ” “
IF(Current_GPA__c >=3.4 , “✅”,
IF(AND(Current_GPA__c >= 2.5, Current_GPA__c < 3.3) , “⚠️”,
IF(AND(Current_GPA__c >= 2.0, Current_GPA__c < 2.5) , “?”,

I began by simply displaying the GPA value and a space—no magic there. Then there’s a nested IF statement that showed an emoji based on which band the GPA falls into. Each of the other fields on that report worked essentially the same way.

Business results

Once those formula fields were built to display, it was a simple matter to drop them on a report together. Now, that’s the go-to report for the Academy Group’s learning team to see which students need some extra attention to get them back on track.

Bonus wins

Some of your Salesforce users might be visually impaired, using a screen reader or other assistive device. By supplementing the number indicator with a large and colorful image, some visually-impaired users will already have an easier time right off the bat. And screen reader users get automatic alt text read aloud for the emoji.

And here’s a major bonus that my report takes advantage of: Since emoji are text, you can work with them in formulas that evaluate text! 

Did you notice the Count of Flags field in the left column of my report screenshots? That column is sorted in descending order, bringing students that need extra support to the top of the list. The count is actually generated from the fields with emoji in them! Red warning flags count as one point and yellow flags count for half a point, resulting in a tally:

IF(CONTAINS(Flag_Advisory_Flags__c , “?”), 1,
IF(CONTAINS(Flag_Advisory_Flags__c , “⚠️”), 0.5, 0)) +

IF(CONTAINS(Flag_AG_Prog_Attend_SY__c , “?”), 1,
IF(CONTAINS(Flag_AG_Prog_Attend_SY__c , “⚠️”), 0.5, 0)) +

IF(CONTAINS(Flag_GPA__c , “?”), 1,
IF(CONTAINS(Flag_GPA__c , “⚠️”), 0.5, 0)) +

IF(CONTAINS(Flag_Office_Hours_Attendance__c , “?”), 1,
IF(CONTAINS(Flag_Office_Hours_Attendance__c , “⚠️”), 0.5, 0)) +

IF(CONTAINS(Flag_School_Attend__c , “?”), 1,
IF(CONTAINS(Flag_School_Attend__c , “⚠️”), 0.5, 0))

Good luck writing that formula field for static resource image flags!

Do try this at home

I showed a pretty specific example from a particular nonprofit, but the principle applies anywhere. How might you use it?

Literal flags

You might also use some of the hundreds of emoji flags. (Mark opportunities where you’re bidding against a major competitor with a ?‍☠️, anyone?) 

Top performers

I made another field for Academy Group that calculates results on a school report card and displays “4 High Opportunity ?” for those with the top aggregate results. It probably wasn’t strictly necessary, but how could I resist that trophy icon?

Maybe your largest opportunities need a trophy in their name?

Fun with currency

And let’s not forget the things you can do on opportunities with the various money symbols (? ? ?)! 

The list of emoji grows every year, so you have new options periodically.


A Salesforce Admin's Guide to TrailblazerDX 2024.

A Salesforce Admin’s Guide to TrailblazerDX 2024

The Trailblazer community is coming back together on March 6-7, 2024, in San Francisco and on Salesforce+ for TrailblazerDX 2024—join us! Generative artificial intelligence (AI) is revolutionizing application development, creating the most significant shift and opportunities for both admins and developers in decades. At TDX, you’ll learn to supercharge user productivity, automate business processes, and […]

Be Release Ready Spring '24 | The Ultimate Guide to Prompt Builder.

The Ultimate Guide to Prompt Builder | Spring ’24

Artificial intelligence (AI) is not a new concept to Salesforce or to Salesforce Admins. Over the years, Salesforce has empowered admins with a user-friendly interface for the setup and configuration of predictive AI features such as Opportunity Scoring, Lead Scoring, Einstein Bots, and more. The introduction of generative AI in Salesforce brings even more possibilities […]

Be Release Ready Spring '24 | Einstein for Formulas.

Einstein for Formulas | Spring ’24

Formula creation and maintenance is an important skill to have as an Awesome Admin. You can use formulas to automate calculations, validate data, derive values, perform conditional logic, concatenate information, trigger automation, calculate date/time, and much more. You will commonly use formulas in (the most obvious) formula fields, validation rules, and default values in fields. […]