Caracteres e bytes são números diferentes
A contagem com espaços inclui todos os caracteres; a contagem sem espaços descarta espaços, quebras de linha e tabulações. Formulários e trabalhos que impõem um limite costumam especificar um ou outro, e para um mesmo texto os dois números diferem normalmente entre dez e vinte por cento.
Os bytes medem o espaço que o texto ocupa ao ser guardado ou enviado. Em UTF-8, letras inglesas e dígitos ocupam um byte, letras acentuadas como é dois, a maioria dos caracteres chineses, japoneses e coreanos três, e emojis quatro. Larguras de coluna de bancos de dados e limites de SMS costumam ser contados em bytes.
A contagem de palavras separa pelos espaços. Isso serve para idiomas que separam palavras com espaços; chinês e japonês não fazem isso, então para eles a contagem de caracteres é mais útil.
Bater exatamente no limite de caracteres
Emojis e alguns símbolos parecem um único caractere mas internamente são formados por vários pontos de código. Esta ferramenta conta o que o leitor vê como um caractere, enquanto o sistema para onde você envia pode contar de outro jeito, então deixe margem em vez de parar exatamente no limite.
Texto colado arrasta para a contagem espaços no começo e no fim e linhas em branco. Copiar de um processador de texto costuma deixar espaços no fim de cada linha, então se você passou por poucos caracteres procure espaços invisíveis antes de reescrever qualquer coisa.
Uma quebra de linha é um caractere em alguns sistemas e dois em outros. O Windows a guarda como dois, então um texto com muitas linhas curtas ocupa mais bytes do que se espera. Isso importa quando o que você precisa cumprir é um limite em bytes e não em caracteres.