CRC Calculator

Share calculator:
Embed this tool:

Pick CRC-8, CRC-16 or CRC-32, enter some text, and get its checksum in hexadecimal. The guide explains how a CRC is calculated and which variants this calculator uses.

What is a CRC?

A cyclic redundancy check (CRC) is a short checksum computed from a block of data. The sender calculates it and sends it along with the data; the receiver repeats the calculation and compares. If the two values differ, the data was damaged on the way and can be re-sent. CRCs are fast to compute in hardware and software, and they are very good at catching the kinds of errors that real communication channels and storage devices produce, such as bursts of flipped bits.

A CRC is named after the length of its result. A CRC-8 has 8 bits (two hex digits), a CRC-16 has 16 bits and a CRC-32 has 32 bits. The longer the check value, the smaller the chance that damaged data slips through unnoticed: roughly 1 in 256, 1 in 65,536 and 1 in 4.3 billion for random corruption. Even the one-bit parity bit is a (very weak) CRC.

A CRC protects against accidents, not attackers. It is trivial to change a file and adjust it so that its CRC stays the same, so never use it to prove that data is authentic. For that, use a cryptographic hash such as SHA-256.

How to use the CRC calculator

  1. Choose the CRC algorithm: CRC-8, CRC-16 or CRC-32 (the default).
  2. Type or paste your text into the String box.
  3. Press Calculate. The checksum appears as a hexadecimal number starting with 0x.

Example: the text 123456 gives 0x70930F27 with CRC-32, 0xA141 with CRC-16 and 0xC3 with CRC-8.

What is checksummed. The calculator works on the UTF-8 bytes of the text exactly as you typed it. Nothing is trimmed, normalised or added, and the result is written in upper-case hexadecimal.

  • Every character counts. Spaces, tabs and capital letters change the bytes, and so usually the checksum (CRC-8 is the exception, see below).
  • UTF-8 encoding. A plain ASCII character is one byte, é is two (c3 a9), 日 is three (e6 97 a5) and an emoji such as 😀 is four (f0 9f 98 80).
  • Line breaks are kept as they arrive. A browser text box stores each line break as a single line-feed character (LF, byte 0a), and text pasted with Windows CR LF line endings normally arrives as LF too. The calculator does not convert it to anything else. CRC-32 sees the byte 0a, CRC-16 sees its spelling 0a, and CRC-8 counts it as a non-digit.
The same two lines give different checksums when the line break is one byte or two.
Line break between line1 and line2CRC-32CRC-16CRC-8
LF (11 bytes, what a text box holds)0x55F2A70A0x1D9D0x9E
CR LF (12 bytes, as in a Windows file)0x292762F10xFD0B0x9F

To checksum a file that uses Windows CR LF line endings, run a command-line tool on the file itself. This page can only checksum text the way a browser text box holds it.

How a CRC is calculated

A CRC treats the message as one very long binary number, divides it by a fixed generator polynomial using arithmetic without carries, and keeps the remainder. Without carries, addition and subtraction are the same operation, an exclusive OR (XOR), which is why CRC circuits are built from shift registers and XOR gates.

CRC = (message × 2^n) mod G(x)n is the CRC width in bits; the division is carry-less (XOR) division.

Worked example with a 3-bit CRC. Take the message 10110011 and the generator 1011 (the polynomial x³ + x + 1). Append three zeros to the message to make room for the remainder, giving 10110011000. Then repeatedly line the generator up under the leftmost 1 and XOR:

StepWorking valueAction
010110011000message followed by three zeros
100000011000XOR 1011 at the first position
200000001110XOR 1011 at the 7th position
300000000101XOR 1011 at the 8th position

No 1 bit is left in the first eight positions, so the division is finished. The remainder, 101, is the 3-bit CRC. The sender transmits 10110011 followed by 101; a receiver that divides the whole thing by 1011 gets a remainder of zero if nothing was damaged.

Real CRCs add a few conventions on top of this division: a non-zero starting value, optional reversal of the bit order of each byte and of the result, and a final XOR. Each combination of polynomial and conventions is a different, named variant.

Which variants this calculator uses

CRC is a family, not a single algorithm, and two tools can both say "CRC-32" and give different numbers. This calculator follows these definitions:

  • CRC-32 uses the polynomial 0x04C11DB7, starts from 0xFFFFFFFF, does not reflect any bits and XORs the result with 0xFFFFFFFF. This is the algorithm called CRC-32/BZIP2, and the four bytes of the answer are written in the opposite order (the "crc32" hash of the PHP programming language works this way). It is not the CRC-32 used by zip, gzip, PNG and Ethernet.
  • CRC-16 is CRC-16/XMODEM (polynomial 0x1021, starting value 0) applied to the hexadecimal spelling of the input's UTF-8 bytes, in lower case with two characters per byte. The text ab is first written as 6162, and the checksum covers those four characters.
  • CRC-8 uses the polynomial 0x4D with starting value and final XOR 0xFF and reflected bits (CRC-8/KOOP). Each UTF-8 byte of the input is first reduced to its digit value: the characters 0 to 9 count as 0 to 9, and every other byte (letters, spaces, line breaks, each byte of an accented letter) counts as 0. As a result the CRC-8 of a text without digits depends only on its length in bytes.
Check values for the standard test string; the standard values are from the CRC catalogue used by most libraries
Input 123456789This calculatorCommon standard variant
CRC-320x181989FC0xCBF43926 (zip, gzip, PNG)
CRC-160xB96A0x31C3 (XMODEM on the raw text)
CRC-80x250xF4 (CRC-8 with polynomial 0x07)

Because of these differences, compare the results of this calculator with other tools only when they use exactly the same variant. If you need the checksum that a zip file or PNG image stores, use a tool that implements the standard CRC-32 (also called CRC-32/ISO-HDLC).

Where CRCs are used

  • Network frames (Ethernet, Wi-Fi) and storage formats (zip, gzip, PNG) include a CRC-32 so that corrupted data is detected.
  • Short CRCs such as CRC-8 and CRC-16 appear in sensor buses, serial protocols, barcodes and memory cards, where space is tight.
  • Firmware and configuration blocks often end with a CRC so that a device can refuse to run damaged data.

In all of these the receiver divides the data it got by the same polynomial and compares the result, as described above. For a fingerprint that must also resist deliberate tampering, see the MD5 generator and its caveats, or prefer SHA-256.

Frequently asked questions

What is the difference between CRC-8, CRC-16 and CRC-32?

Only the length of the result: 8, 16 or 32 bits. A longer CRC catches more kinds of errors and is less likely to miss random corruption, at the cost of a larger checksum.

Is a CRC the same as a hash?

No. A CRC is a simple error-detecting checksum designed for accidents, while a cryptographic hash such as SHA-256 is designed to resist deliberate attempts to forge data with the same value.

Why does this calculator's CRC-32 differ from the one in my other tool?

There are many CRC-32 variants. This calculator uses the BZIP2 variant with its bytes written in reverse order, while zip, gzip and PNG use the ISO-HDLC variant. The same text gives a different number in each.

Can two different inputs have the same CRC?

Yes. A CRC has a fixed size, so there are always collisions. A CRC-32 has about 4.3 billion possible values, and CRC-8 only 256, so short checksums repeat quickly.

Why is my CRC-8 the same for different words?

This calculator's CRC-8 looks only at the digits in the text and treats every other character as zero, so words made of letters give a result that depends only on their length.

References

  1. Catalogue of parametrised CRC algorithms (reveng), the source of the standard check values above

Cite this calculator and page

If you use this page in your work, you can cite it as:

Reeliy Editorial Team. (2026). CRC Calculator. Reeliy. https://reeliy.com/calculators/crc-calculator“CRC Calculator.” Reeliy, 2026, https://reeliy.com/calculators/crc-calculator.