Enviar um arquivo
  1. base64hub
  2. Ferramentas de texto
  3. Texto para Base64

Texto para Base64: converter uma string em Base64

Digite uma string e obtenha o Base64 na hora. O resultado depende dos bytes, por isso a ferramenta deixa você escolher o charset e mostra exatamente quantos bytes foram codificados.

Grátis sem cadastro, sem limites Local nada é enviado Atualizado 27 de out. de 2026
Entrada 0 BSaída 0 BTamanho –

Processado no seu navegador. Esta página não consegue enviar seus dados para lugar nenhum – como sabemos

Como converter texto para Base64

  1. Digite ou cole a string em Entrada · texto. Tudo o que você inserir é codificado exatamente, incluindo espaços e quebras de linha.
  2. O Base64 aparece em Saída · Base64. O número Entrada abaixo dos botões mostra em quantos bytes o seu texto se transformou.
  3. Deixe o Charset em UTF-8, a menos que o sistema que vai decodificar o valor espere outra coisa.
  4. Marque URL-safe (- _) e Sem preenchimento (=) se a string for para uma URL ou um token.
  5. Clique em Copiar saída, ou em Baixar para salvar como base64.txt.

Para voltar, use Base64 para texto, ou clique em Inverter para decodificar o resultado aqui mesmo.

Uma string, vários Base64 possíveis

O Base64 codifica bytes, e uma string só vira bytes por meio de um charset. É por isso que as mesmas cinco letras podem gerar quatro respostas diferentes:

StringCharsetBytesBase64
GrüßeUTF-87R3LDvMOfZQ==
GrüßeWindows-1252 ou ISO-8859-15R3L832U=
GrüßeUTF-16LE10RwByAPwA3wBlAA==
GrüßeUTF-16BE10AEcAcgD8AN8AZQ==

Caracteres invisíveis também contam. Hello é SGVsbG8=, Hello com um espaço no final é SGVsbG8g, e Hello seguido de uma quebra de linha do Windows é SGVsbG8NCg==. Quebras de linha são uma armadilha clássica em valores com várias linhas: line1 e line2 unidos por \n viram bGluZTEKbGluZTI=, unidos por \r\n viram bGluZTENCmxpbmUy. Se dois sistemas discordam sobre um valor, compare primeiro a quantidade de bytes.

Qual será o comprimento da string Base64

Cada 3 bytes de entrada viram 4 caracteres, e um último grupo de 1 ou 2 bytes é completado até 4 com =.

Bytes de entradaCaracteres Base64Exemplo (x repetido)
14eA==
24eHg=
34eHh4
48eHh4eA==
1016eHh4eHh4eHh4eA==

Ou seja, uma string cresce cerca de um terço, e mais ainda se caracteres não ASCII ocuparem vários bytes cada em UTF-8. A página sobre o aumento de tamanho do Base64 traz os números exatos para saídas com quebra de linha.

Onde as strings codificadas vão parar

As pessoas convertem strings para Base64 principalmente para fazê-las passar por lugares que não se dão bem com caracteres especiais:

  • Variáveis de ambiente e segredos de CI, onde um valor com aspas, $ ou quebras de linha seria corrompido. postgres://app:s3cret@db:5432/app vira cG9zdGdyZXM6Ly9hcHA6czNjcmV0QGRiOjU0MzIvYXBw, uma linha sem nada para escapar.
  • Secrets do Kubernetes, cujos valores em data: precisam estar em Base64. O decodificador de Secrets do Kubernetes os lê de volta.
  • Cabeçalhos HTTP, por exemplo Authorization: Basic com user:password codificado. O gerador de cabeçalho Basic Auth monta o cabeçalho completo.
  • Campos JSON e XML que precisam levar texto arbitrário sem que as regras de escape atrapalhem (JSON para Base64).

Nada disso esconde o valor. Qualquer pessoa com a string consegue decodificá-la, então trate um segredo codificado como um segredo em texto puro; veja codificação vs criptografia.

String para Base64 no código

import base64

base64.b64encode("Grüße".encode("utf-8")).decode("ascii")   # 'R3LDvMOfZQ=='
base64.b64encode("Grüße".encode("cp1252")).decode("ascii")  # 'R3L832U='
// Node.js
Buffer.from("Grüße", "utf8").toString("base64");     // "R3LDvMOfZQ=="
Buffer.from("Grüße", "utf16le").toString("base64");  // "RwByAPwA3wBlAA=="

As duas linguagens exigem que o passo de string para bytes seja explícito, e é nele que fica a escolha do charset. Mais nas páginas de Python e Node.js.

Perguntas frequentes

Como converter uma string em Base64?

Transforme a string em bytes com um charset (UTF-8 em quase todo lugar) e depois codifique os bytes em Base64. A ferramenta acima faz as duas coisas; em Python é base64.b64encode(s.encode("utf-8")).decode().

O mesmo texto sempre gera o mesmo Base64?

Só se os bytes forem os mesmos. Grüße é R3LDvMOfZQ== em UTF-8, mas R3L832U= em Windows-1252, e um espaço ou uma quebra de linha a mais também mudam o resultado.

Qual será o comprimento da string Base64?

4 × ⌈n / 3⌉ caracteres para n bytes de entrada, antes de qualquer quebra de linha. Uma string de 10 bytes gera 16 caracteres; a calculadora de tamanho faz a conta para qualquer comprimento.

Posso colocar uma string Base64 em um arquivo de configuração ou variável de ambiente?

Sim, esse é um dos usos principais: ele transforma qualquer valor, inclusive com quebras de linha e aspas, em uma única linha de caracteres seguros. Para manter tudo em uma linha, deixe Quebra de linha em Nenhuma.