[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"tool-content:en:hex-to-rgb-converter":3,"glossary:en":57,"published-tools-en":107},{"id":4,"documentId":5,"slug":6,"intro":7,"howTo":8,"longContent":9,"createdAt":10,"updatedAt":11,"publishedAt":12,"locale":13,"name":14,"faq":15,"examples":40,"category":41,"seo":51,"localizations":56,"metaTitle":53,"metaDescription":54},336,"e1r428nejmrxg2cpvvlxhsjt","hex-to-rgb-converter","\u003Cp>\u003Cstrong>#3B82F6\u003C\u002Fstrong> converts to \u003Cstrong>rgb(59, 130, 246)\u003C\u002Fstrong>, one pair of hexadecimal digits per colour channel. The converter runs both ways, so an \u003Cstrong>rgb to hex\u003C\u002Fstrong> conversion of those same three values returns \u003Cstrong>#3B82F6\u003C\u002Fstrong> in uppercase. It reads \u003Cstrong>3-digit and 6-digit hex\u003C\u002Fstrong> with or without the leading #, adds the \u003Cstrong>HSL equivalent\u003C\u002Fstrong> then reports the \u003Cstrong>WCAG contrast\u003C\u002Fstrong> of white and black text on that colour.\u003C\u002Fp>","\u003Col>\u003Cli>Pick the direction first. Hex to RGB reads the hex field, while RGB to hex reads the three 0-255 channels and ignores whatever sits in the hex box.\u003C\u002Fli>\u003Cli>Paste the code in any form. #FFF, #ffffff and FF0000 without the hash all parse, since case and the leading # are both optional.\u003C\u002Fli>\u003Cli>Read the three outputs together. Hex comes back uppercase in 6 digits, RGB as an rgb() string ready to drop into CSS, HSL with hue in degrees and two percentages.\u003C\u002Fli>\u003Cli>Open the contrast panel for the ratio against white text and against black text. It marks a pass or a fail on each of the four WCAG levels then names the readable option.\u003C\u002Fli>\u003C\u002Fol>","\u003Ch2 id=\"hex-to-rgb\">How does a hex code turn into RGB values?\u003C\u002Fh2>\u003Cp>A hex colour packs three base-16 numbers into one string, two digits per channel. Take \u003Cstrong>#3B82F6\u003C\u002Fstrong> as an example: the pair \u003Cstrong>3B\u003C\u002Fstrong> is red, 82 is green and F6 is blue. Each pair reads as sixteen times the first digit plus the second, where the letters A to F stand for 10 to 15.\u003C\u002Fp>\u003Cp>The first pair works out to (3 &times; 16) + 11 = \u003Cstrong>59\u003C\u002Fstrong>, the second to (8 &times; 16) + 2 = \u003Cstrong>130\u003C\u002Fstrong>, then the third to (15 &times; 16) + 6 = \u003Cstrong>246\u003C\u002Fstrong>. That one step, repeated three times, is the whole of a \u003Cstrong>hex code to rgb\u003C\u002Fstrong> conversion.\u003C\u002Fp>\u003Cp>Two hex digits hold exactly \u003Cstrong>0 to 255\u003C\u002Fstrong>, which is why the channel range stops at 255 rather than at 100 or 1000. A lone hex number outside a colour context converts in the \u003Ca href=\"\u002Fconversion\u002Fhex-converter\">hex converter\u003C\u002Fa> instead.\u003C\u002Fp>\u003Ch2 id=\"rgb-to-hex\">How do you convert RGB to hex?\u003C\u002Fh2>\u003Cp>The reverse conversion divides each channel by 16. Take \u003Cstrong>rgb(59, 130, 246)\u003C\u002Fstrong> as an example: 59 divided by 16 leaves 3 remainder 11, where 11 becomes B, so red is written \u003Cstrong>3B\u003C\u002Fstrong>. Green follows the same path, since 130 divided by 16 leaves 8 remainder 2, which pairs up as \u003Cstrong>82\u003C\u002Fstrong>. And 246 leaves 15 remainder 6, so blue lands on \u003Cstrong>F6\u003C\u002Fstrong>.\u003C\u002Fp>\u003Cp>Any channel below 16 needs a padding zero to keep its pair intact, so \u003Cstrong>rgb(1, 2, 3)\u003C\u002Fstrong> becomes \u003Cstrong>#010203\u003C\u002Fstrong> rather than #123. An \u003Cstrong>rgb color to hex\u003C\u002Fstrong> result arrives in uppercase, which trips a plain string comparison against design tokens stored in lowercase.\u003C\u002Fp>\u003Cp>Each channel has to land on a whole number inside \u003Cstrong>0-255\u003C\u002Fstrong>. A channel of 300 or -5 returns an error, since the converter never clamps a value to fit. A decimal rounds to the nearest whole number first, which sends \u003Cstrong>rgb(59.6, 130, 246)\u003C\u002Fstrong> through as 60 and lands it on \u003Cstrong>#3C82F6\u003C\u002Fstrong>.\u003C\u002Fp>\u003Ch2 id=\"formats\">Which hex formats does the converter accept?\u003C\u002Fh2>\u003Cp>Codes rarely arrive as a clean 6-digit string. The \u003Cstrong>3-digit shorthand\u003C\u002Fstrong> doubles each digit rather than padding it with zeros, so \u003Cstrong>#F00\u003C\u002Fstrong> expands to \u003Cstrong>#FF0000\u003C\u002Fstrong> and #ABC becomes #AABBCC rather than #0A0B0C. The leading # is optional and the converter trims surrounding spaces, which lets a value copied straight out of a stylesheet go through as it is.\u003C\u002Fp>\u003Cp>Two lengths get turned down here, both of them common in real palettes. The \u003Cstrong>8-digit form with alpha\u003C\u002Fstrong> (#RRGGBBAA) returns an error, as does the 4-digit shorthand, because the parser takes \u003Cstrong>3 or 6 hex digits\u003C\u002Fstrong> and nothing else. The same rule catches anything outside 0-9 and A-F, with \u003Cstrong>ZZZ\u003C\u002Fstrong> the classic case.\u003C\u002Fp>\u003Ctable>\u003Cthead>\u003Ctr>\u003Cth scope=\"col\">Input\u003C\u002Fth>\u003Cth scope=\"col\">Accepted\u003C\u002Fth>\u003Cth scope=\"col\">RGB result\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth scope=\"row\">#FFF\u003C\u002Fth>\u003Ctd>Yes\u003C\u002Ftd>\u003Ctd>255, 255, 255\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth scope=\"row\">#ffffff\u003C\u002Fth>\u003Ctd>Yes\u003C\u002Ftd>\u003Ctd>255, 255, 255\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth scope=\"row\">FF0000\u003C\u002Fth>\u003Ctd>Yes\u003C\u002Ftd>\u003Ctd>255, 0, 0\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth scope=\"row\">#ABC\u003C\u002Fth>\u003Ctd>Yes\u003C\u002Ftd>\u003Ctd>170, 187, 204\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth scope=\"row\">#3B82F6FF\u003C\u002Fth>\u003Ctd>No\u003C\u002Ftd>\u003Ctd>8 digits, alpha unsupported\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth scope=\"row\">ZZZ\u003C\u002Fth>\u003Ctd>No\u003C\u002Ftd>\u003Ctd>Not hex digits\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003Ch2 id=\"contrast\">Which text colour stays readable on a background colour?\u003C\u002Fh2>\u003Cp>Black text on \u003Cstrong>#3B82F6\u003C\u002Fstrong> scores \u003Cstrong>5.71:1\u003C\u002Fstrong> while white text on that same blue reaches \u003Cstrong>3.68:1\u003C\u002Fstrong>, so the panel names black as the readable option. The ratio compares relative luminance, a weighted measure of how much light a colour sends back, in which green counts for 0.7152 of the total against 0.2126 for red and 0.0722 for blue.\u003C\u002Fp>\u003Cp>The four WCAG bars are \u003Cstrong>4.5:1\u003C\u002Fstrong> for AA body text, \u003Cstrong>3:1\u003C\u002Fstrong> for AA large text, \u003Cstrong>7:1\u003C\u002Fstrong> for AAA body text and \u003Cstrong>4.5:1\u003C\u002Fstrong> for AAA large text, where large text means around 18pt or 14pt in bold. The scale runs from 1:1, a colour against itself, up to \u003Cstrong>21:1\u003C\u002Fstrong>, the exact figure black and white reach together.\u003C\u002Fp>\u003Cp>\u003Cstrong>#767676\u003C\u002Fstrong> against white measures \u003Cstrong>4.54:1\u003C\u002Fstrong>, the thinnest pass the AA body bar allows. One unit lighter per channel and it fails, since \u003Cstrong>#777777\u003C\u002Fstrong> falls to \u003Cstrong>4.48:1\u003C\u002Fstrong>. Those two greys look identical on screen and land on opposite sides of an accessibility audit, so a palette that looks safe still needs the number before sign-off.\u003C\u002Fp>","2026-08-06T07:18:49.991Z","2026-08-26T10:00:02.324Z","2026-08-26T10:00:00.000Z","en","RGB to Hex and Hex to RGB Converter",[16,20,24,28,32,36],{"id":17,"question":18,"answer":19},2367,"What is #FFF in RGB?","\u003Cp>\u003Cstrong>#FFF\u003C\u002Fstrong> is \u003Cstrong>rgb(255, 255, 255)\u003C\u002Fstrong>, pure white. The 3-digit shorthand doubles each digit rather than padding it with zeros, so #FFF expands to \u003Cstrong>#FFFFFF\u003C\u002Fstrong> rather than #0F0F0F. The converter returns that expanded 6-digit form next to the RGB triplet.\u003C\u002Fp>",{"id":21,"question":22,"answer":23},2368,"How do you convert RGB to hex by hand?","\u003Cp>Divide each channel by 16 and read the quotient then the remainder as hex digits, where A to F stand for 10 to 15. Take \u003Cstrong>246\u003C\u002Fstrong> as an example: 246 divided by 16 gives 15 remainder 6, where 15 becomes F, so the pair comes out as \u003Cstrong>F6\u003C\u002Fstrong>. Any channel under 16 takes a leading zero, so \u003Cstrong>3\u003C\u002Fstrong> has to appear as \u003Cstrong>03\u003C\u002Fstrong>.\u003C\u002Fp>",{"id":25,"question":26,"answer":27},2369,"Does the converter accept 8-digit hex with alpha?","\u003Cp>No. Only \u003Cstrong>3-digit and 6-digit\u003C\u002Fstrong> hex codes parse here, so \u003Cstrong>#3B82F6FF\u003C\u002Fstrong> and the 4-digit form \u003Cstrong>#FFFF\u003C\u002Fstrong> both return an error. Drop the final two digits to convert the colour itself, then keep the alpha byte aside. FF is fully opaque, 00 fully transparent.\u003C\u002Fp>",{"id":29,"question":30,"answer":31},2370,"Is #ffffff the same colour as #FFFFFF?","\u003Cp>Yes. Case carries no meaning in a hex code, so \u003Cstrong>#ffffff\u003C\u002Fstrong>, \u003Cstrong>#FFFFFF\u003C\u002Fstrong> and \u003Cstrong>ffffff\u003C\u002Fstrong> without the hash all parse to \u003Cstrong>rgb(255, 255, 255)\u003C\u002Fstrong>. The converter normalises the output to uppercase and puts the hash back, which keeps a batch of converted values consistent once they land in a stylesheet.\u003C\u002Fp>",{"id":33,"question":34,"answer":35},2371,"What does the HSL output add?","\u003Cp>HSL restates the same colour as hue in degrees plus saturation and lightness in percent, which makes a tint or a shade easier to build. \u003Cstrong>#3B82F6\u003C\u002Fstrong> reads as \u003Cstrong>hsl(217.2, 91.2%, 59.8%)\u003C\u002Fstrong>, so lifting the lightness alone gives a paler blue of the same hue. Grey has no hue to report, which is why \u003Cstrong>#767676\u003C\u002Fstrong> comes back as \u003Cstrong>hsl(0, 0%, 46.3%)\u003C\u002Fstrong>.\u003C\u002Fp>",{"id":37,"question":38,"answer":39},2372,"What contrast ratio does WCAG require?","\u003Cp>WCAG asks for \u003Cstrong>4.5:1\u003C\u002Fstrong> on body text at level AA and \u003Cstrong>7:1\u003C\u002Fstrong> at AAA. Large text, meaning around 18pt or 14pt in bold, drops to \u003Cstrong>3:1\u003C\u002Fstrong> at AA and \u003Cstrong>4.5:1\u003C\u002Fstrong> at AAA. The panel marks each of those four as a pass or a fail for white text and for black text, then names whichever of the two reads better on the colour.\u003C\u002Fp>",[],{"id":42,"documentId":43,"uid":44,"name":45,"tagline":46,"hubContent":47,"createdAt":48,"updatedAt":49,"publishedAt":50,"locale":13},19,"nk5esc49yvildfg1590op901","conversion","Conversion","Free converters for numbers, units and text formats.","\u003Cp>Every converter in this category runs in your browser, so your data never leaves your device. Each tool answers as you type, shows how it got there and lets you copy or download the result. Under every converter we keep a short guide with the rules it applies and the edge cases worth knowing before you trust a result.\u003C\u002Fp>","2026-07-17T11:46:43.618Z","2026-07-17T12:29:12.484Z","2026-07-17T12:29:12.872Z",{"id":52,"metaTitle":53,"metaDescription":54,"keywords":55,"metaRobots":55,"structuredData":55,"metaViewport":55,"canonicalURL":55},570,"RGB to Hex and Hex to RGB Converter: HSL + WCAG Check","Convert rgb to hex and hex to RGB both ways, in 3 or 6 digits. Get the HSL value plus the WCAG contrast of white and black text. Free, no signup.",null,[],[58,70,82,95],{"id":59,"documentId":60,"slug":61,"term":62,"definition":63,"relatedTools":64,"createdAt":67,"updatedAt":68,"publishedAt":69,"locale":13},17,"o1ljpluv6app6z9rrhst4gfn","cubic-yard","Cubic yard","\u003Cp>A \u003Cstrong>cubic yard\u003C\u002Fstrong> is the volume of a cube measuring 3 x 3 x 3 feet, which equals 27 cubic feet or about \u003Cstrong>0.7646 m³\u003C\u002Fstrong>. It is the standard unit for ordering bulk materials in the United States: ready-mix concrete, topsoil, gravel, sand and mulch are all priced and delivered by the cubic yard, often shortened to \"yard\" on a quote.\u003C\u002Fp>\u003Cp>For scale, a typical 12 x 10 ft patio slab poured 4 inches thick contains 40 cubic feet, which is 40 \u002F 27 = 1.48 cubic yards of concrete. A standard ready-mix truck carries 8 to 10 cubic yards, so that whole slab uses less than a fifth of one load.\u003C\u002Fp>\u003Cp>How big is a cubic yard in practice? The cube stands 3 feet on each side, roughly counter height, and holds about 14 full wheelbarrow loads of material. Spread out, one cubic yard covers close to 100 square feet at a depth of 3 inches, the usual layer for mulch or a gravel path.\u003C\u002Fp>",[65,66],"math\u002Fconcrete-calculator","math\u002Fvolume-calculator","2026-07-18T14:23:56.812Z","2026-08-02T10:00:01.228Z","2026-08-02T10:00:00.000Z",{"id":71,"documentId":72,"slug":73,"term":74,"definition":75,"relatedTools":76,"createdAt":79,"updatedAt":80,"publishedAt":81,"locale":13},16,"mdw0ypy9f3z1nioxaxnl9rvr","password-entropy","Entropy (passwords)","\u003Cp>\u003Cstrong>Entropy\u003C\u002Fstrong> measures how unpredictable a password is, expressed in bits. Each additional bit doubles the number of guesses an attacker needs. For a randomly generated password, it follows a simple formula: entropy = length × log2 of the alphabet size, so both the length and the variety of characters raise the score.\u003C\u002Fp>\u003Cp>A random 16-character password drawn from the 94 printable ASCII symbols reaches 16 × log2(94), about \u003Cstrong>105 bits\u003C\u002Fstrong>. At 10 billion guesses per second, exhausting that space would take on the order of 10^14 years, while a 6-character password from the same alphabet peaks at 39 bits and falls in about a minute.\u003C\u002Fp>\u003Cp>Written as a formula, \u003Cstrong>E = L × log2(N)\u003C\u002Fstrong>: the entropy equals the length L multiplied by the base-2 logarithm of N, the number of possible symbols per character. Current guidance treats 75 to 80 bits as the comfortable minimum for accounts that matter, a level a random 12-character password mixing all character types already clears.\u003C\u002Fp>",[77,78],"generator\u002Fpassword-generator","generator\u002Fusername-generator","2026-07-18T14:23:55.755Z","2026-08-01T10:00:01.360Z","2026-08-01T10:00:00.000Z",{"id":83,"documentId":84,"slug":85,"term":86,"definition":87,"relatedTools":88,"createdAt":92,"updatedAt":93,"publishedAt":94,"locale":13},15,"ypkfs6wnfljm03ge2b1ztiwv","percentage-point","Percentage point","\u003Cp>A \u003Cstrong>percentage point\u003C\u002Fstrong> is the unit used to express the arithmetic difference between two percentages. It compares rates by subtraction, while \"percent\" compares them by division: the two measures answer different questions and can differ wildly for the same change.\u003C\u002Fp>\u003Cp>Example: an interest rate that moves from 5% to 7% rises by \u003Cstrong>2 percentage points\u003C\u002Fstrong> (7 - 5 = 2), but by 40 percent in relative terms (2 ÷ 5 × 100 = 40). Saying \"the rate went up 2%\" would be wrong on both counts: the correct phrasings are \"up 2 points\" or \"up 40%\".\u003C\u002Fp>\u003Cp>The standard abbreviation is \u003Cstrong>pp\u003C\u002Fstrong>, sometimes just \"points\", as in \"unemployment fell by 0.5 pp\". Confusing percent with percentage points remains the classic trap: a party moving from 20% to 30% in the polls gains 10 percentage points, yet grows by 50 percent, and headlines regularly pick the wrong figure.\u003C\u002Fp>",[89,90,91],"math\u002Fpercentage-calculator","math\u002Faverage-calculator","finance\u002Fcalcul-remise","2026-07-18T14:23:54.573Z","2026-07-31T10:00:01.940Z","2026-07-31T10:00:00.000Z",{"id":96,"documentId":97,"slug":98,"term":99,"definition":100,"relatedTools":101,"createdAt":104,"updatedAt":105,"publishedAt":106,"locale":13},14,"g3okb797ekrz0kkpm36mfjwc","weighted-average","Weighted average","\u003Cp>A \u003Cstrong>weighted average\u003C\u002Fstrong> is an average where each value counts in proportion to an assigned importance, called its weight, instead of counting equally. Each value is multiplied by its weight, the products are added, and the sum is divided by the total of the weights. Class grades, GPAs, and stock indexes are all weighted averages.\u003C\u002Fp>\u003Cp>Example: scores of 92, 85, and 88 with weights of 30, 30, and 40 give (92 x 30 + 85 x 30 + 88 x 40) \u002F 100 = \u003Cstrong>88.3\u003C\u002Fstrong>. The plain average of the same scores is 88.33, but if the heaviest score dropped to 78, the weighted average would fall to 84.3 while the plain average only fell to 85.\u003C\u002Fp>\u003Cp>The weighted average formula in plain words: multiply each value by its weight, add up the products, then divide by the sum of the weights. In a spreadsheet the whole calculation fits in one cell, since Excel's SUMPRODUCT function multiplies and adds in a single pass: SUMPRODUCT of the values and weights, divided by SUM of the weights.\u003C\u002Fp>",[90,102,103],"math\u002Fgrade-calculator","math\u002Fgpa-calculator","2026-07-18T14:23:53.329Z","2026-07-30T10:00:01.216Z","2026-07-30T10:00:00.000Z",{"slugs":108},[109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,6,160,161,162,163],"age-calculator","average-calculator","cd-calculator","concrete-calculator","cursive-font-generator","date-calculator","fantasy-name-generator","final-grade-calculator","fraction-calculator","glitch-text-generator","gpa-calculator","grade-calculator","hex-converter","hours-calculator","interest-calculator","military-time-converter","roman-numeral-converter","password-generator","binary-converter","celsius-to-fahrenheit-converter","kg-to-lbs-converter","percentage-calculator","word-counter","tip-calculator","morse-code-translator","username-generator","ratio-calculator","sales-tax-calculator","small-text-generator","mm-to-inches-converter","volume-calculator","timer","square-footage-calculator","stair-calculator","roof-pitch-calculator","board-foot-calculator","aspect-ratio-calculator","rounding-calculator","random-letter-generator","mulch-calculator","fence-calculator","upside-down-text-generator","acreage-calculator","gravel-calculator","proportion-calculator","paint-calculator","tile-calculator","braille-translator","quadratic-formula-calculator","gcf-calculator","probability-calculator","uuid-generator","standard-deviation-calculator","lcm-calculator","caesar-cipher"]