CRC calculator
A cyclic redundancy check, or CRC, is a short fixed-length checksum appended to a block of data so the receiver can detect accidental changes such as bit flips in transmission or storage. It is computed by treating the data as a long binary number and taking the remainder after division by a fixed generator polynomial, using carry-free binary arithmetic. This calculator implements the standard CRC-8 algorithm with the common polynomial 0x07, processing the ASCII bytes of whatever text you enter and returning the 8-bit check value in both hexadecimal and decimal. CRCs are everywhere: in Ethernet frames, ZIP archives, hard-drive sectors and serial protocols, precisely because they are cheap to compute yet very effective at catching the kinds of errors that real channels produce. A single changed character almost always changes the CRC, which is exactly what makes it useful as an integrity check. Enter your own message to verify a protocol field, generate a test vector or check a computer-science exercise. The result updates as you type. Every figure here is computed deterministically from the standard CRC-8 bitwise algorithm, explained in full below with a worked example using the famous check string that reconciles exactly to the calculator.
CRC-8 takes the remainder of the data divided by the generator polynomial 0x07 in carry-free binary arithmetic. The standard check string 123456789 gives a CRC-8 value of 0xF4 (decimal 244), the published reference result for this polynomial.
CRC-8 algorithm
crc = 0x00 (initial value)
for each data byte b: crc = crc XOR b
repeat 8 times: if top bit set, crc = (crc << 1) XOR 0x07
else crc = crc << 1 (keep 8 bits)
generator polynomial 0x07 = x^8 + x^2 + x + 1
Each message byte is mixed into the running 8-bit remainder, then the remainder is shifted left bit by bit, subtracting (XORing) the polynomial whenever the bit that falls off the top is a one. After the last byte the 8-bit remainder is the CRC.
Worked example
Compute the CRC-8 of the standard check string 123456789 with polynomial 0x07.
- Start with crc = 0x00 and process the ASCII bytes 31 32 33 ... 39
- For each byte, XOR it into crc, then shift left 8 times, XORing 0x07 on each 1 that overflows
- This is binary polynomial division: the data divided by x^8 + x^2 + x + 1
- The final 8-bit remainder is 0xF4
- 0xF4 in decimal is 244
The CRC-8 of 123456789 is 0xF4 (244 in decimal), matching the published check value for this polynomial. These are the calculator's default inputs, so the result above matches the widget exactly.
CRC calculator: frequently asked questions
What is a CRC?
A cyclic redundancy check is a checksum used to detect accidental errors in digital data. The sender computes the CRC over the data and sends it along; the receiver recomputes it and compares. If the two differ, the data was corrupted in transit or storage. CRCs are simple, fast and very good at catching common error patterns.
What is the CRC-8 polynomial 0x07?
The polynomial 0x07 represents x to the eighth plus x squared plus x plus 1, the generator used by the common CRC-8 variant. The data is divided by this polynomial in carry-free binary arithmetic, and the 8-bit remainder is the check value. Different applications use different polynomials.
Why is 123456789 used as a test?
The ASCII string 123456789 is the standard check input published for CRC algorithms. Computing a CRC over it gives a known reference value, so implementers can confirm their code is correct. For CRC-8 with polynomial 0x07 and a zero initial value, the published result is 0xF4.
Can a CRC detect every error?
No. A CRC detects all single-bit errors, all burst errors up to its width, and the large majority of larger random errors, but a small fraction of corruptions can leave the CRC unchanged. It is an error-detection tool, not error correction, and it does not protect against deliberate tampering.
Does this use the ASCII bytes of the text?
Yes. The calculator takes the ASCII code of each character you type and feeds those bytes through the CRC-8 algorithm. The computation is deterministic, so the same text always gives the same CRC, and the worked example reconciles exactly to the calculator output.
Official sources
- Data integrity and reference algorithm definitions: US National Institute of Standards and Technology (NIST). As at 25 June 2026.
Reviewed by the CalculatorHub team, edited by James Graham, 25 June 2026. See our methodology. This is general information, not financial, tax, legal or investment advice.