Checksum Calculators
CRC-16 Checksum Calculator
Calculate CRC-16/CCITT-FALSE for UTF-8 text. The four-digit hexadecimal result helps detect accidental changes in a matching protocol.
✓ Every tool runs in your browser. We do not upload your input or output.
Keyboard shortcuts
Ctrl/⌘ + Enter: process
Ctrl/⌘ + Shift + F: full screen
Esc: exit full screen
Ctrl/⌘ + F in editor: search
How to use
- Paste the exact text that your protocol treats as bytes.
- Run the calculator and read the four-digit hex value.
- Confirm the other system also uses CRC-16/CCITT-FALSE, including its initialization and final settings.
- Compare the values and investigate any whitespace or encoding difference.
Examples
Check the standard test sequence
This known check value helps confirm the selected CRC variant.
123456789
0x29b1
Match the complete CRC definition
CRC-16 is a family of error-detection checks rather than one universal function. This page uses the CCITT-FALSE parameters and displays the 16-bit value as four lowercase hexadecimal digits. It is useful for testing a protocol example or comparing exact text with another implementation that names the same variant. The familiar input 123456789 gives 0x29b1, a quick way to check you selected the intended settings.
The browser encodes entered text as UTF-8 before applying the polynomial. If a device calculates CRC over raw binary packets, this text tool may not match those bytes. A different newline or a non-ASCII character also changes the byte sequence. CRC values detect common accidental transmission errors but are easy to recompute after deliberate changes. Use HMAC or a digital signature when integrity against an attacker matters. Calculation stays in a local Web Worker; the site does not receive the text.
When recording a result, note both the input encoding and the full variant name. Writing only “CRC-16” leaves important parameters unstated and makes future comparisons unreliable.
Frequently asked questions
Which CRC-16 variant is used?
CRC-16/CCITT-FALSE: polynomial 0x1021, initial value 0xffff, no reflection, and final XOR 0x0000.
Does a matching CRC prove authenticity?
No. CRC detects accidental changes but is not a cryptographic authentication code.
Is the text encoded before calculation?
Yes. The editor text is encoded as UTF-8 bytes.
Why does another CRC-16 tool disagree?
CRC-16 names cover different initialization, reflection, and final-XOR choices. Match all parameters.