Um conversor de hex para RGB é um pequeno utilitário que transforma um código de cor hex (`#FF5733`) nos três valores inteiros de canal que ele representa (`rgb(255 87 51)`). HEX e RGB são os dois formatos em torno dos quais toda folha de estilo web, ferramenta de design e pipeline de pixel de imagem foi construída desde o fim dos anos 1990, e a conversão entre eles é a operação mais comum em qualquer ferramenta de cor. HEX é o formato conciso de copiar e colar que Figma, Sketch, Photoshop e todo PDF de guia de marca exportam por padrão — uma string base 16 de 6 caracteres que cabe confortavelmente em uma propriedade customizada CSS e se lê de relance quando seus olhos aprendem os padrões. RGB é o formato endereçado por canal que APIs de hardware, chamadas de desenho em canvas, manipulação de buffer de imagem, atributos de cor OpenGL e a maioria dos SDKs gráficos esperam — três inteiros 0-255 separados (ou floats normalizados 0-1) que mapeiam diretamente para os subpixels vermelho, verde e azul de um LCD ou para os fósforos de um CRT. Converter entre eles é mecânico: divida o hex em três pares de 2 dígitos e leia cada par como um número base 16. Esta ferramenta roda essa conversão ao vivo enquanto você digita, sem botão "Converter" para clicar, e expõe todo outro formato de cor comum (HSL, OKLCH, OKLAB, HSV, HWB, CMYK, mais as 148 cores nomeadas do CSS) ao lado da saída RGB, grátis.
**O próprio formato RGB merece um olhar mais próximo.** O sRGB padrão de 24 bits codifica cada canal como um inteiro sem sinal de 8 bits de 0 a 255 — 256 valores por canal, 16.777.216 cores no total (256³). O padrão de referência é a IEC 61966-2-1, a especificação sRGB de 1996 ancorada nos primários de fósforo de CRT que dominavam as telas da época. O CSS expõe o RGB pela função `rgb()` em três variações sintáticas. A forma original do CSS 1 usa separadores por vírgula: `rgb(255, 87, 51)`. O CSS Color 4 (Candidate Recommendation do W3C desde 2022) adicionou uma forma moderna separada por espaços: `rgb(255 87 51)`, com um canal alfa opcional depois de uma barra: `rgb(255 87 51 / 0.5)`. As duas formas são intercambiáveis e vêm em todo navegador evergreen. O RGB também aceita canais em porcentagem: `rgb(100% 33% 20%)` é equivalente a `rgb(255 87 51)`, às vezes preferido em folhas de estilo escritas à mão por legibilidade. O alfa especificamente tem uma função `rgba()` separada para suporte legado — `rgba(255, 87, 51, 0.5)` é a forma canônica que funciona em todo lugar até o IE 9. O CSS Color 4 também adicionou uma sintaxe `color(srgb 1 0.341 0.2)` para endereçamento explícito de sRGB, e funções paralelas `color(display-p3 ...)` e `color(rec2020 ...)` para valores de gama ampla que o hex não consegue codificar.
A matemática da conversão vai nos dois sentidos de forma limpa. **HEX para RGB**: parse o hex de 6 dígitos `#RRGGBB` como três números base 16 de 2 dígitos via `parseInt(hex.slice(1, 3), 16)`, `parseInt(hex.slice(3, 5), 16)`, `parseInt(hex.slice(5, 7), 16)`. Para a forma abreviada de 3 dígitos `#RGB`, expanda cada dígito duplicando-o (`#F73` → `#FF7733`) antes de parsear — isso *não* é left-pad. Para alfa de 8 dígitos `#RRGGBBAA`, parse o par final do mesmo jeito e divida por 255 para obter o float alfa 0-1. Para a forma abreviada alfa de 4 dígitos `#RGBA`, expanda cada dígito primeiro (`#F738` → `#FF773388`). **RGB para HEX** é o inverso: para cada canal, chame `value.toString(16).padStart(2, '0')` para obter o par hex de 2 dígitos (o `padStart` importa — sem ele, o valor de canal 5 seria serializado como `'5'` em vez de `'05'`, produzindo hex inválido), depois concatene. Ambas as direções são bit-exatas em qualquer sentido: 16² = 256, exatamente correspondendo à faixa de byte 0-255 que cada canal ocupa, então um round-trip HEX → RGB → HEX produz a entrada original verbatim sem deriva de float.
**Por que hex vs RGB?** Hex é mais curto, nativo das ferramentas de design e o formato que seu olho aprende com o tempo — a maioria dos devs front-end identifica `#3b82f6` como o blue-500 do Tailwind de bate-pronto. RGB é endereçamento explícito de canal, mais fácil de computar contra em JavaScript e o único dos dois que aceita alfa e porcentagens de forma limpa. Os dois formatos coexistem porque resolvem problemas diferentes. Folhas de estilo web e guias de marca tendem ao hex porque o custo de copiar e colar domina. Chamadas de desenho em canvas, processamento de imagem, APIs de LED de hardware e qualquer código que faça aritmética por canal tendem ao RGB porque indexar em uma tupla é mais rápido do que fatiar uma string. A troca entre eles acontece dezenas de vezes em um projeto web típico — colar um hex do Figma, converter para inteiros RGB para uma chamada `ctx.fillStyle = ...`, converter de volta para hex para uma definição de variável CSS.
O fluxo HEX → RGB desta ferramenta é uma direção de uma família de 5 spokes que compartilham o mesmo conversor de cor unificado por baixo. O conversor de cores unificado dedicado é o hub — ele mostra todos os 9 formatos simultaneamente editáveis e é a ferramenta certa quando seu fluxo precisa de mais do que apenas hex e RGB. Os spokes de direção única miram intenções específicas de busca no Google: o caminho inverso conversor de RGB para hex, o conversor de hex para HSL para o espaço cognitivo legado de designer, o conversor de hex para OKLCH para design systems perceptualmente uniformes modernos (Tailwind v4 e shadcn agora padronizam OKLCH) e o conversor de hex para CMYK para aproximações de preparação de impressão. Todos os cinco spokes e o hub compartilham o mesmo motor de parsing e a mesma matemática de conversão, então os resultados são garantidamente idênticos pela família toda. Cada conversão roda localmente no seu navegador — seus códigos hex nunca são enviados, nunca registrados e zero requisições de rede disparam enquanto você digita. Confira no DevTools.