Hello,
Before writing this question I have read many discussions and posts around this topic such as:
How to Track Tokenized Links in Email Assets
URLs in Email Script Token not tracking
Marketo tracking links breaking when velocity script tokens used
But I failed to find the solution so here is the case.
There is the email which contains a banner. Both the banner image and the banner link are Velocity tokens.
Of course, we want to track the Link URL. But as the link is part of Velocity token, Marketo doesn't track it.
That was the original Email Script Token:
What I have tried:
1. Add https:// to the Link URL field (https://{{my.bottom banner link}}) and at the same time remove https:// from the Velocity token.
Failed. The links don't work at all.
The screenshot from the logs:
2. Add a new Variable to the token
In this case, the link works but Marketo still doesn't track it.
So the question is how to manage the link tracking if the link is a part of velocity script and this velocity script is used not in the text but as a banner link?
Thank you in advance.
Unfortunately I don't think there is a way for Marketo to track this, the reason being that the link gets rendered on the user's inbox and by then Munchkin hasn't been able to store it as a possible action on the email.
The easiest solution is to check the attribution channel on your Google Analytics and search for the link you need to test and where it was clicked.
Alternatively you could use a third party email software like Email on Acid (or Litmus or any other that you may like) and feed the code into it and then back to Marketo before doing the send-out. That's how we do it for links that will only render in Outlook using conditional comments markup.
I'm sure that's not the answer you were looking for but I think I'm right on this. On the other hand you could consider re-thinking the logic behind why you'd need a link inside Velocity script and try find a workaround.
There's no reason a link around an image can't be made trackable.
But the entire <a> tag needs to be output from Velocity. In other words, not a mktoImg. Don't see why that would be a problem here as everything is tokenized anyway.