Yes, you can display SharePoint list email addresses as clickable mailto links. The method depends on whether you are using a modern SharePoint list or a classic list, but the core solution involves either formatting the column as a hyperlink or using a calculated column to generate a mailto: URL.
Why Email Addresses Appear as Plain Text
By default, SharePoint lists store email addresses as plain text in a single line of text column. The platform does not automatically detect and convert them into clickable mailto links. This is a common frustration because users expect the same behavior they see in Outlook or Word, where typing an email address automatically creates a hyperlink. In SharePoint, you must explicitly tell the column to treat the value as a link.
Method 1: Format the Column as a Hyperlink (Modern Lists)
The simplest approach for modern SharePoint lists is to change the column type to Hyperlink. This requires you to re-enter the email addresses as URL values. Here are the steps:
- Go to your list and select the column header, then choose Column settings > Edit.
- Change the column type from Single line of text to Hyperlink.
- For each existing item, edit the row and paste the email address in the Address field, and optionally type a friendly name in the Display text field (e.g.,
John Doe). - When entering new items, users will see two boxes: one for the URL and one for the display text.
This method works but requires manual data entry or a quick script if you have many items. The hyperlink column stores the URL as mailto:name@example.com.
Method 2: Use a Calculated Column (Works in Classic and Modern)
If you want to keep your existing single line of text column and avoid re-entering data, you can add a calculated column that converts the text into a clickable link. This works in both classic and modern list views.
- Add a new column to your list, choose Calculated as the type.
- In the formula field, enter:
=CONCATENATE("",[Email],"") - Set the data type returned to Number (even though it looks like text) to allow the HTML to render.
- Save the column. The calculated column will now show the email as a clickable link in list views.
This method is efficient because it preserves the original data and automatically updates the link if the email changes. However, calculated columns are read-only and cannot be edited directly.
Method 3: JSON Column Formatting (Modern Lists Only)
For modern SharePoint lists, you can use JSON formatting to turn an existing text column into a clickable link without creating a new column. This is the most flexible and modern approach.
- Click on the column header, then choose Column settings > Format this column.
- In the JSON pane, replace the default code with something like:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
"type": "a",
"href": "mailto:' + join([$Email], '') + '",
"target": "_blank",
"children": [
{
"type": "span",
"txt": "[$Email]"
}
]
}
- Click Save. The column will now display the email as a clickable mailto link.
JSON formatting is powerful because it can also change the link color, add icons, or hide the email text entirely. It does not modify the underlying data, so you can still edit the email as text.
Comparing the Methods: Which One to Choose?
The right method depends on your environment and how you manage the list:
- Hyperlink column – Best for new lists where you control data entry. It is straightforward and works in classic and modern views, but requires manual re-entry of existing data.
- Calculated column – Good when you cannot change the original column and want to avoid re-entry. It works in both classic and modern, but the output is read-only and can be tricky to format.
- JSON formatting – The modern, recommended approach for SharePoint Online. It is flexible, non-destructive, and can be customized with icons or tooltips. It does not work in classic views.
If you are using SharePoint Server on-premises (2013, 2016, 2019), JSON formatting is not available; use the calculated column method instead.
Common Problems and Troubleshooting
Even with the correct setup, you may encounter issues:
- Link not clickable in the list view – Check that you are viewing the list in the modern experience. Some classic views strip HTML from calculated columns.
- Calculated column shows as plain text – Ensure the return type is set to Number and that the formula is correct. A common mistake is using double quotes instead of single quotes in the HTML.
- JSON formatting shows raw JSON – This usually means the column formatting was not applied correctly. Refresh the page or re-apply the JSON from the column settings.
- Emails with special characters – If an email contains a plus sign or other special characters, they may need URL encoding. In JSON, use the
encodeURIComponent()function if needed. - Links open in the same tab – Add
"target": "_blank"in JSON formatting to open in a new tab. For calculated columns, you can addtarget='_blank'to the anchor tag.
Security and Privacy Considerations
Exposing email addresses in a list can increase spam risk. Before making them clickable, consider whether the list is visible to external users. If the list is shared externally, you may want to use a contact form instead of a direct mailto link. Additionally, mailto links can trigger security warnings in some browsers if the email client is not configured. For internal lists, this is usually not an issue.
Alternatives to Mailto Links
If you want a more integrated experience, consider using a Power Automate flow to send an email when a button is clicked, or use a people picker column that stores user accounts and automatically provides a clickable email in the profile card. Both options avoid exposing raw email addresses and provide better control.
Frequently Asked Questions
Can I make an email clickable in a SharePoint list without changing the column type?
Yes, use JSON column formatting (modern) or a calculated column (classic). Both allow you to keep the original text column and display a clickable link based on its value.
Why is my calculated column showing HTML code instead of a link?
This happens when the calculated column’s return type is set to Text. Change it to Number, which causes SharePoint to render the HTML in list views. Also, ensure you use single quotes inside the HTML string.
Does JSON formatting work in SharePoint Server on-premises?
No, JSON column formatting is only available in SharePoint Online (Microsoft 365). For on-premises versions, use a calculated column or a hyperlink column.
How do I make the email link open in a new tab?
In JSON formatting, add "target": "_blank". For calculated columns, add target='_blank' inside the anchor tag, like <a href='mailto:...' target='_blank'>.
Can I hide the email address and show a friendly name instead?
Yes. In JSON formatting, change the txt field to a custom label. For calculated columns, replace the second [Email] in the formula with a static text like “Send Email”.
What if my email column contains blank values?
You can add a check in JSON formatting using the if operator to display a placeholder. For calculated columns, use an IF formula to return an empty string when the email is blank.
Related
Method: the standard formula for this calculation, rounded as each result states. See how the calculators work or report an error.
More cards in this drawer
- Valheim Server Not Showing in Community List Fixes
- Soundbar vs 2.1 Speaker System: Which Is Better?
- DisplayPort vs HDMI: Which Cable Should You Use?
- Survive Lava for Brainrot Tier List170 points
- MySQL Dump Import: Fix Common Errors
- Mouse Moving on Its Own? Causes & Fixes