Wiegand 26/34 Converter

Paste a frame, a 3- or 4-byte hex payload, a facility-code pair or a bare card number — get both the 26-bit and 34-bit frames, parity checked.

Every common form is accepted: a 26- or 34-bit binary frame, a 3- or 4-byte hex payload, a facility-code pair written as 94-62286, or a bare card number. Colons group bytes; a hyphen separates the facility code from the card number.

Frame options — auto-detect is usually right

Only used when the input does not already fix the width. A 3-byte hex payload is 26-bit, a 4-byte one is 34-bit; a facility-code pair is shown in both.

A bare decimal number is read as the card number, with the facility code taken as 0. Switch this when your number is actually the site code.

When you need this

  • You captured a frame at the reader (a string of 26 or 34 bits) and want to know whether its parity bits survived the wiring.
  • The panel wants a 26-bit credential and all you have is a 34-bit facility code and card number — or the other way round.
  • A reader hands you a hex payload like 22 05 39 and you need the binary frame the controller will actually see.
  • You were given a bare card number and need to know what facility code it implies, or whether it even fits a 26-bit frame.

Why other Wiegand calculators fall short

Most converters only swap number bases. They never draw the field boundary, so the same 26-bit frame reads as a different facility code and card number in every tool you try.

When a 34-bit facility code does not fit a 26-bit frame, some tools quietly take the low 8 bits and hand you a frame that passes parity, is accepted by the controller, and never opens the door.

A decimal number copied out of a config tool is often the whole frame including both parity bits — one bit of magnitude away from the card number. Tools that label it a card number send people chasing the wrong value.

Frequently asked questions

What is actually different between Wiegand 26 and 34?

The card number field is 16 bits in both. Everything the extra eight bits buy goes into the facility code: 26-bit carries 8 bits of it (0–255), 34-bit carries 16 (0–65,535). So the same card can have the same card number in both formats while the facility code reading depends entirely on where the boundary sits. This tool shows both frames from the same field values, so you can see the split rather than compute it.

Why is my facility code different in the two formats?

Because the facility code field has a different width. A 26-bit frame stores it in 8 bits, so a facility code of 300 simply does not exist there. When you enter a facility code above 255, the 26-bit frame is deliberately not shown: truncating the code produces a frame that passes parity but identifies a different site at the door. Only the 34-bit form is given, with a note explaining why.

The tool says the parity does not check out. Is the card bad?

Almost never. The result is still shown with both parity failures spelled out bit by bit, because the far more common cause is a lost pulse between the reader and the controller — a long or unshielded cable run is the classic culprit. Check the wiring and re-read the card before assuming the credential itself is wrong. Two lost pulses inside the same parity window cancel out, so a frame that passes parity is not proof that nothing was lost either.

Is my card data uploaded anywhere?

No. The conversion is arithmetic on the digits you pasted, and there is no backend to send anything to. Open the DevTools Network panel and paste a frame: no request is made. The page installs as a PWA, so once it has loaded it keeps working with the network disconnected.

Other tools

Guides