Dynamic Link Personalization Not Working (tracking happens before personalization)
Hi everyone,
I’m running into an issue with Adobe Campaign Classic where link tracking seems to occur before the email’s personalization step. Specifically, I want to add a dynamic query parameter (like a unique data value) to a URL or somewhere else so I can read the value when querying the logs and reporting on customer link clicks.
For example:
<a href="https://www.example.com?id=<%= targetData.myValue %>"> Click Here </a>
In the final email, the tracked link contains the actual value and everything works fine.
But the final tracked link still isn’t personalized. It looks like the link tracking rewrite happens first, so the personalization never evaluates. Value is simple string, containing numbers, so there are no spaces or special characters.
I’ve tried various stuff, like:
- Using <%= escapeUrl(targetData.myValue) %>
- Rendering the parameter in other places, like link label or email header subject - It's always the same. Works in delivery, it's not rendered in the log.
- Ensuring the field is in the targetData and has correct value
My goals are to:
- Track the clicks in Adobe Campaign (so I need link tracking enabled)
- Pass the dynamic value in the final URL that the user lands on
- Store this data in the logs so I can tie clicks back to a specific user context.
Important constraint: I’m in an environment where I cannot extend schemas, so adding extra fields to broadLog or other schemas isn’t an option for me.
Does anyone know a method to force Adobe Campaign to fully resolve the personalization (e.g., <%= ... %>) before it applies link tracking—or a recommended approach that doesn’t require schema extensions to capture this data in a reportable way?
Any guidance or best practices would be really appreciated!
Thanks in advance!