Q:

AMPscript Variables in Preheader

Does anyone know why AMPscript variables won't work in the preheader? They will resolve in the send preview, but once the email is delivered they are blank. 
If I use the same variables in both the subject line and preheader, the subject line variables resolve but the preheader variables do not once the email is delivered. This does not make sense to me and seems like a bug in SFMC. Wondering if anyone has a solution or work around. 
These are ampscript variables... so the syntax is like this:
This is my variable: %%=v(@var)=%%

A:

The issue is that in the fully built email the AMPscript block that sets the preheader variables is placed farther down in the file than where the preheader gets inserted. 
SFMC will place the preheader block directly after the opening <body> tag. In order to have preheader variables render after the email deployment, your AMPscript block that sets these variables must be placed before the opening <body> tag. I put the block directly after the opening <html> tag. 

