Haunts significa 'assombrar' ou 'atormentar'. Não se refere apenas a fantasmas, mas a algo que persiste na sua mente, uma memória ou arrependimento que não te deixa em paz.
Nesta canção, Bruno Mars usa a palavra para descrever como os erros do passado e o arrependimento o perseguem constantemente, especialmente quando ele fecha os olhos. É uma palavra muito expressiva que captura a dor e a persistência da perda.
Sabe aquele momento clássico em que você só dá valor depois que perde? É exatamente essa a conversa que Bruno Mars tem com o piano nesta música. Ele começa reparando no vazio da própria rotina com "Same bed, but it feels just a little bit bigger now" (A mesma cama, mas ela parece um pouco maior agora). A dor aqui é bem prática e sem rodeios: a música deles toca no rádio, os amigos tocam no nome dela, e tudo vira motivo para ele se culpar por ter sido egoísta demais no passado.
O ponto alto é o refrão carregado de arrependimento, onde ele admite que era "Too young, too dumb to realize" (Jovem demais, burro demais para perceber). A expressão dumb aqui não é uma ofensa grave; significa apenas agir como um bobo ou sem noção. Ele lista as pequenas atitudes que deixou de lado: comprar flores, segurar a mão e levá-la para dançar. No final, Bruno engole o próprio orgulho e torce para que o novo namorado faça tudo o que ele mesmo vacilou em fazer com a frase "Do all the things I should've done / When I was your man" (Faça todas as coisas que eu deveria ter feito / Quando eu era o seu homem).