When I add this preheader in Marketing Cloud:
Only a click away
and test send my mail to my mailbox, my preheader will look like this:
Only a click away Online Version Design Catalogue Find a store etc etc.

So the preheader actually becomes a mix of my preheader and the first available texts in my header element in the email.

Can I in anyway set up my preheader to show preheader text only?

Thank you

2 Answers 2


Normally the email clients show all "text" that they find in the emails up to N# number of characters as an abstract of the email content.

A possible workaround is to add HTML whitespaces ( ‌= " ‌") after the preheader:

<div style="display:none; white-space:nowrap; font:15px courier; color:#ffffff;">

You can do this in 2 ways:

  1. (suggested) edit your template/email HTML in the "code view" and place the code above in the <body> after <custom type="header" />
  2. Add to your email a "snippet block" plance it like first element in the email and then paste the code above in the block.

Remember that each (non markup) text presente before the code above will be displayed as preheader also if you have "hide" with the HTML CSS/Style.

Remove text in preheade

Hide elements in email



If you are using a dynamic preheader, set in a ampscript variable, you can use this code snippet I have built to add whitespaces, in order to avoid showing actual email content in the preheader:

IF _messagecontext == 'SEND' THEN
    SET @preheaderLength = length(@preheader)
    SET @maxLength = 120
    SET @spaceFill = subtract(@maxLength, @preheaderLength) 
    FOR @counter = 1 to @spaceFill do 
        SET @preheader = CONCAT(@preheader,'&#847;&zwnj;&nbsp;') 

The whitespace characters and the length are derived from this Litmus article.

  • Thank you Lukas :) Commented Mar 22, 2023 at 14:04

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .