s1 = 'Hello\nWorld'
s1E = urlencode(s1)
s2 = sprintf('Hello\nWorld')
s2E = urlencode(s2)
whos
s1 contains 12 characters including both \ and n while s2 contains 11 including a newline. Just because text includes the pair of characters '\n' doesn't mean that's treated as a newline.