Another reason to not base64 encode is that many URLs with base64 strings will break in iMessage do to strings randomly matching various keywords that iMessage looks for. I think ‘usd’ is one such substring to look out for.
As a native speaker of en-US, I would write this as "base64 does not have the problem here, iMessage does."
Your version reads more correct, thanks for pointing it out.