Toolivaro

Convertidor de Hex a RGB gratis

Convierte códigos de color hexadecimales a tripletes RGB y viceversa — al instante, con soporte de forma abreviada de 3 y 6 dígitos, totalmente local.

El convertidor de hex a RGB traduce entre las dos notaciones de color que todo desarrollador front-end encuentra: códigos hex como #3498db y tripletes rgb(52, 152, 219). Escriba o pegue cualquiera de las dos formas y la herramienta rellena la otra — el hex de 6 dígitos se convierte en sus tres valores de canal, y un triplete separado por comas o espacios se convierte en su código hex. El convertidor acepta la forma abreviada de 3 dígitos (#fff se expande a #ffffff), el # inicial opcional, dígitos en mayúsculas o minúsculas, e incluso la sintaxis completa de la función rgb(52, 152, 219), de modo que los valores copiados de un inspector de navegador, una herramienta de diseño o un mockup funcionan tal cual se pegan. La validación es estricta sobre lo que puede ser un color: los dígitos hex deben ser válidos y cada canal RGB debe ser un entero de 0 a 255 — un triplete como 300, 0, 0 se rechaza con un mensaje claro en lugar de envolverse o recortarse silenciosamente. Cuando ambos campos están llenos, el valor hex gana, de modo que la precedencia es predecible y documentada en lugar de sorprendente. La conversión es aritmética pura sobre los valores de canal — nada se aproxima, y nada de lo que introduzca se sube, registra o almacena. Use esta herramienta cuando una guía de estilo le dé hex y su librería de gráficos necesite RGB, cuando esté depurando un color que se ve distinto de lo esperado en un tema oscuro, o cuando quiera razonar sobre cuánto rojo, verde y azul componen realmente un color.

Se procesa localmente en tu navegador

3 o 6 dígitos con # inicial opcional — mayúsculas o minúsculas.

Tres enteros de 0 a 255, separados por comas o espacios.

Cómo usar esta calculadora

What the two notations mean

Hex and rgb() are two spellings of the same thing: three channel values that say how much red, green, and blue a color mixes. A hex code like #3498db is the three channels written in base 16 — the pairs 34, 98, db — while rgb(52, 152, 219) writes the same numbers in decimal. The converter is pure arithmetic on those channels: each hex pair is parsed with parseInt(·, 16) and each decimal channel is converted back to two base-16 digits, so the two forms are always exact, never approximated.

That is the tool’s entire job, and it is why the conversion is instant and lossless: #3498db is rgb(52, 152, 219), and rgb(52, 152, 219) is #3498db, with nothing lost in either direction. The hex form is the compact notation style guides and design systems use; the rgb() form is what many charting libraries, canvas APIs, and older CSS code expect.

The input forms that just work

Values copied out of a browser inspector, a design tool, or a mockup arrive in different shapes, and the converter accepts them as pasted: a 6-digit code, a 3-digit shorthand like #fff (which expands to #ffffff, matching CSS behavior), an optional leading #, uppercase or lowercase digits, and even the full function syntax rgb(52, 152, 219) or a bare triplet 52, 152, 219. Output is always normalized to the unambiguous 6-digit lowercase hex form, so the result never carries the ambiguity of shorthand.

Validation is strict about what a color can be: hex digits must be valid hex, and each RGB channel must be an integer from 0 to 255. A triplet with a channel of 300 is rejected with a clear message rather than silently clamped — CSS clamps out-of-range values, but a conversion tool should not invent a color the input did not describe.

Why the precedence rule exists

When both fields are filled, the hex value wins and converts to RGB; the rgb field is ignored. The rule is documented rather than guessed because a converter that silently picked a side would produce a result that disagreed with what the user intended to change. The behavior is predictable: edit the field you want to be authoritative, and the other side updates to match.

The same predictability applies to case and formatting: hex output is always lowercase because hex digits are case-insensitive and lowercase is the convention most tooling and minifiers use, and shorthand input always expands to the full form so the result is unambiguous.

The honest limits

The converter handles three-channel colors only: 4- and 8-digit hex (#rgba, #rrggbbaa) and rgba() carry an alpha channel this tool does not parse, and named CSS colors (red, blue, rebeccapurple) are not accepted — convert those by looking up their hex or rgb form first. For colors with transparency, convert the 6-digit base color here and keep the alpha separately. And as with everything on the site, the conversion runs entirely in your browser: no value you enter is uploaded, logged, or stored.

¿Cómo se calcula el resultado?

Un valor hex de una herramienta de diseño en su librería de gráficos

Su sistema de diseño define el azul de marca como #3498db, pero la librería de gráficos necesita tripletes rgb(). El convertidor divide el hex en sus pares — 34, 98, db — y los interpreta en base 16: 52, 152, 219, de modo que el gráfico recibe rgb(52, 152, 219) y muestra el mismo azul.

Entrada y resultado del ejemplo
Entrada Valor
Color hex #3498db
RGB
Resultado rgb(52, 152, 219)

¿Cuál es la fórmula y sus supuestos?

Hex a RGB

rgb(r, g, b) = pares hex interpretados en base 16

Términos de la fórmula
Símbolo Significado
pares hex los tres grupos de dos dígitos de un código hex de 6 dígitos (RRGGBB), cada uno interpretado con parseInt(·, 16)
r, g, b valores de canal de 0 a 255

La forma abreviada de 3 dígitos (#fff) expande cada dígito antes de interpretarlo, como hace CSS.

RGB a hex

hex = #rrggbb, cada canal en dos dígitos hex en base 16 en minúsculas

Términos de la fórmula
Símbolo Significado
canal un entero de 0 a 255
rr gg bb las representaciones hexadecimales de dos dígitos, con ceros al inicio (p. ej. 10 → 0a)

¿Cuáles son los errores más comunes?

  • Escribir canales fuera de rango (como 300) y esperar recorte — CSS recorta, pero el convertidor rechaza con un error, que es el comportamiento honesto para una herramienta de conversión.
  • Olvidar que un canal hex de un dígito se expande (p. ej. #f00 es #ff0000, no #00ff00) — el convertidor siempre emite la forma expandida.
  • Introducir colores con nombre (red, blue) — el convertidor solo acepta dígitos hex y tripletes numéricos.

¿Cuáles son los supuestos y las limitaciones?

  • Sin canal alfa: no se admiten hex de 4 y 8 dígitos ni rgba().
  • Los colores CSS con nombre (red, blue, rebeccapurple) no se aceptan — use sus formas hex o rgb.
  • La salida hex siempre es en minúsculas y de 6 dígitos, normalizando la forma que haya introducido.

¿De dónde salen los números?

Última revisión 11 de agosto de 2026 · Versión 1.0.0 · Toolivaro no garantiza el contenido externo.

Preguntas frecuentes

¿Cuál es la diferencia entre hex de 3 y 6 dígitos?

Un código de 3 dígitos como #fff es la forma abreviada de CSS: cada dígito se duplica, así que #fff significa #ffffff. Todo navegador moderno lo admite. El convertidor acepta ambas y siempre emite la forma completa de 6 dígitos, para que el resultado no sea ambiguo.

¿Manejan valores alfa (transparencia)?

Todavía no. El hex de 8 dígitos (#rrggbbaa) y rgba() llevan un canal de transparencia que este convertidor no interpreta. Para colores con alfa, convierta el color base de 6 dígitos aquí y mantenga el alfa por separado.

¿Por qué la salida hex está en minúsculas?

Los dígitos hex no distinguen mayúsculas — #3498db y #3498DB son el mismo color. Las minúsculas son la convención de la mayoría de las herramientas y minificadores modernos, y mantienen la salida coherente para copiar y pegar.

¿Qué ocurre si lleno los campos hex y RGB?

El valor hex gana y se convierte a RGB; el campo RGB se ignora. La herramienta documenta esta precedencia en lugar de adivinar, de modo que el resultado siempre es predecible.

Why is #fff the same color as #ffffff?

CSS 3-digit shorthand doubles each digit: #fff means #ff ff ff, which is exactly #ffffff. The converter accepts both and always outputs the expanded 6-digit form, so the result is unambiguous.

Is 300, 0, 0 ever a valid color?

No — each channel must be an integer from 0 to 255. CSS clamps out-of-range values silently; this converter rejects them with an error instead, because converting a value that was not a color would produce a misleading result.

Parte de Herramientas de formato y conversión

¿Encontraste un error o tienes una corrección? Repórtalo: revisamos cada corrección.

¿Te ha sido útil?

Revisado por el equipo editorial de Toolivaro según nuestra metodología Metodología · Política editorial