Conversor de RGB para HEX

Converta RGB para HEX em tempo real enquanto digita — grátis, instantâneo, com exemplo prático e tabela de cores comuns.

Exemplo prático

RGB 255, 87, 51 = HEX #ff5733

255 → ff · 87 → 57 · 51 → 33

Como funciona a conversão

  • Um código HEX representa os mesmos três canais RGB escritos em base 16: dois dígitos por canal, variando de 00 (0) a ff (255).

Cores comuns em RGB e HEX

CorRGBHEX
Vermelho255, 0, 0#ff0000
Laranja255, 165, 0#ffa500
Amarelo255, 255, 0#ffff00
Verde0, 128, 0#008000
Ciano0, 255, 255#00ffff
Azul0, 0, 255#0000ff
Roxo128, 0, 128#800080
Rosa255, 192, 203#ffc0cb
Marrom165, 42, 42#a52a2a
Branco255, 255, 255#ffffff
Cinza128, 128, 128#808080
Preto0, 0, 0#000000

Cada conversão roda no seu navegador. Nada do que você digita é enviado para o BroBroGo.

Perguntas frequentes

Como converter RGB para HEX?

Digite ou cole seu valor RGB acima — o valor HEX é atualizado instantaneamente enquanto você digita. Você também pode escolher a cor visualmente usando o seletor de cores.

A conversão é exata?

Sim — HEX e RGB utilizam os mesmos três canais de cor escritos de formas diferentes, por isso a conversão entre eles é exata em ambas as direções.

Conversão exata entre RGB decimal e hexadecimal

A página de conversão RGB para hex recebe três números decimais — cada um entre 0 e 255 — e retorna imediatamente o código hexadecimal equivalente, como #1E90FF. O resultado é acompanhado por uma amostra visual da cor e pela atualização simultânea de todos os outros formatos suportados: HSL, HSV, CMYK, LAB e o seletor de cores. O diferencial desta página está na natureza da conversão. RGB (três canais decimais) e hex (seis dígitos hexadecimais) representam exatamente o mesmo espaço de cores sRGB, o padrão da vasta maioria dos monitores e dispositivos modernos. Não há recorte de gama, aproximação ou perda de informação — a transformação é reversível e exata. O hex gerado sempre tem seis dígitos, sem canal alfa, a menos que o usuário opte pela forma de oito dígitos (não implementada aqui). O campo de entrada aceita os três números separados por vírgulas ou espaços — por exemplo, 79, 70, 229 — e o resultado é #4F46E5. Enquanto você edita qualquer um dos campos de formato (RGB, hex, HSL, etc.), todos os outros são atualizados instantaneamente: não há um botão “converter”.

A matemática por trás da conversão

Cada valor decimal entre 0 e 255 é convertido em exatos dois dígitos hexadecimais. O método é direto: divide-se o valor por 16. O quociente inteiro (entre 0 e 15) vira o primeiro dígito; o resto da divisão (também entre 0 e 15) vira o segundo. Na base hexadecimal, os dígitos de 10 a 15 são representados pelas letras A a F (ou a–f, a página aceita ambas). Por exemplo:

  • 79 ÷ 16 = 4 (quociente) com resto 15. Em hex, 4 é 4 e 15 é F, resultando em 4F.
  • 70 ÷ 16 = 4 com resto 6 → 46.
  • 229 ÷ 16 = 14 com resto 5 → E5.

Juntando os três pares: 4F46E5. Com o prefixo #, obtemos #4F46E5.

Aplicado aos extremos do intervalo: 255 ÷ 16 = 15 com resto 15 → FF. 0 ÷ 16 = 0 com resto 0 → 00. Por isso, branco puro é #FFFFFF e preto é #000000. Cada canal de 8 bits (0–255) mapeia-se perfeitamente em dois nibbles hexadecimais, sem sobra ou arredondamento. A conversão é matemática e reversível: dado #4F46E5, basta converter 4F de volta para decimal (4×16 + 15 = 79), 46 (4×16 + 6 = 70) e E5 (14×16 + 5 = 229) para recuperar os valores RGB originais.

Regras de entrada e casos de borda

O campo de entrada aceita três números separados por vírgula ou espaço — 79, 70, 229 e 79 70 229 são igualmente válidos. Se você digitar valores fora do intervalo 0–255 ou um formato inválido (como texto livre, apenas dois números, ou separadores não permitidos), o sistema exibe a mensagem de erro: “Informe três números de 0 a 255, como 79, 70, 229.” Nenhuma conversão ocorre até que a entrada seja corrigida.

O hex de saída é sempre de seis dígitos. A página não colapsa automaticamente pares iguais — #AABBCC permanece como #AABBCC, não vira #ABC. Porém, o campo de entrada hex aceita a forma abreviada de três dígitos (ex.: #abc) e a expande internamente para seis dígitos (#AABBCC). Isso segue a prática comum em CSS, onde #abc é uma abreviação válida que o navegador interpreta como #aabbcc. A página respeita essa mesma lógica para facilitar a digitação.

Toda edição em qualquer campo (RGB, hex, HSL, HSV, CMYK, LAB, seletor de cores) aciona a atualização de todos os outros — não há necessidade de pressionar Enter ou clicar em um botão. O processamento ocorre inteiramente no navegador: nada que você digita é enviado a servidores.

O modelo RGB e o espaço sRGB

RGB é um modelo aditivo de cor: três fontes de luz — vermelha (R), verde (G) e azul (B) — somam-se para formar uma cor. Cada canal usa uma escala de 0 (desligado, sem luz) a 255 (máxima intensidade). Esse intervalo de 256 valores vem da representação de 8 bits por canal, padrão em computação desde os primeiros monitores coloridos. O espaço de cores utilizado é o sRGB (standard RGB), que define as primárias exatas, o ponto branco e a curva de gama. sRGB é o espaço padrão da web, dos sistemas operacionais e da maioria dos dispositivos de exibição.

Como hex e RGB operam exatamente no mesmo espaço sRGB, a conversão entre eles é puramente notacional — não há transformação de cor, perfil ICC ou ajuste de gama. Por isso, o resultado é sempre reversível e sem perda. Isso difere, por exemplo, da conversão de RGB para CMYK, que envolve mudança de modelo aditivo para subtrativo e geralmente requer perfis de impressão. Aqui, estamos apenas trocando a base numérica (decimal para hexadecimal) dentro do mesmo modelo.

Como usar o hex em CSS e outras ferramentas

Em CSS, o valor hex é usado em propriedades como color e background-color. Exemplo prático:

.exemplo {
  background-color: #4F46E5;
  color: #FFFFFF;
}

O prefixo # é obrigatório. As letras podem ser maiúsculas ou minúsculas — o CSS não diferencia. Por convenção, muitos desenvolvedores usam maiúsculas para melhor legibilidade, mas isso é uma escolha estilística, não uma regra técnica.

O formato de seis dígitos (#RRGGBB) é o mais comum. Existe também o formato de oito dígitos (#RRGGBBAA) que adiciona um canal alfa (transparência), mas este conversor não o gera — o foco é a forma sem transparência, que corresponde ao uso mais frequente em CSS. Se você precisar de transparência, pode adicionar manualmente o valor alfa (00–FF) ao código gerado.

O hex obtido pode ser usado diretamente em editores de imagem (Photoshop, GIMP, Figma, Sketch), em bibliotecas JavaScript que manipulam cores, e em qualquer lugar que aceite o formato #rrggbb. A página também mostra a cor visualmente, facilitando a verificação antes de copiar o código.

Limitações a ter em mente

Como a conversão opera no espaço sRGB, a cor exibida na tela é fiel ao código hex gerado. No entanto, se o objetivo for impressão, lembre-se de que hex e RGB representam cores para luz emitida (telas), enquanto a impressão usa pigmentos (CMYK ou tintas diretas). A mesma cor #4F46E5 pode parecer diferente em um papel jato de tinta ou em uma impressora offset, dependendo do perfil de cor e do tipo de papel. Para trabalhos de impressão, é necessário converter para o espaço de cores do dispositivo de saída.

Outra limitação: o intervalo de 0–255 por canal cobre apenas 16,78 milhões de cores (256³), o que é suficiente para a grande maioria das aplicações digitais, mas não cobre espaços de cores ampliados como Adobe RGB ou DCI-P3. Se você trabalha com fotografia profissional ou design para cinema, pode precisar de conversões que preservem um gamut maior — este conversor, por operar exclusivamente em sRGB, não oferece essa funcionalidade.

Perguntas frequentes (FAQ)

1. Por que o hex gerado tem sempre seis dígitos?

Cada valor RGB de 0–255 se converte em exatos dois dígitos hexadecimais (um par por canal). Três canais × 2 dígitos = seis. A forma de três dígitos (#ABC) é uma abreviação opcional que a página aceita na entrada, mas não produz automaticamente na saída, para evitar ambiguidade: #AABBCC e #ABC são equivalentes, mas a versão de seis dígitos é mais explícita e evita confusões com pares não repetidos.

2. Posso usar espaços ou vírgulas para separar os números RGB?

Sim, ambos são aceitos. Exemplos válidos: 79, 70, 229 ou 79 70 229. O separador pode ser uma vírgula seguida de espaço, só vírgula ou só espaço. Não use outros separadores como ponto-e-vírgula, barra ou traço.

3. O que acontece se eu digitar um valor fora de 0–255?

A página exibe a mensagem de erro: “Informe três números de 0 a 255, como 79, 70, 229.” Nenhuma conversão é realizada até que todos os três valores estejam no intervalo correto. O mesmo ocorre se você digitar letras, símbolos ou um número de argumentos diferente de três.

4. A página guarda meus dados? A conversão é feita localmente?

Todo o processamento ocorre no navegador, em JavaScript. Nenhum dado é enviado a servidores — nem os valores RGB, nem o código hex gerado, nem qualquer interação sua. Você pode usar a página offline (uma vez carregada) e com total privacidade.

5. Por que a cor na tela pode diferir da impressão?

O hex e o RGB representam cores no espaço sRGB, adequado para telas modernas. Para impressão, é necessário converter para o espaço de cor do dispositivo de saída (geralmente CMYK ou perfis baseados em papel). Este conversor não realiza essa conversão — ele é exclusivamente para ambientes digitais onde sRGB é o padrão.

6. Posso usar #abc como entrada no campo hex?

Sim. O campo de entrada hex aceita a forma abreviada de três dígitos (#abc) e a expande internamente para seis dígitos (#aabbcc). Isso é útil se você está acostumado com a abreviação do CSS. O resultado nos outros campos (como RGB) será calculado a partir da versão expandida.