ForHosting KIT · Developer Utilities

Binary to text converter

0100100001100101011011000110110001101111 decodes to Hello: every eight bits make one ASCII character, most significant bit first, and a missing bit or stray character is reported instead of padded in silence. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon

A binary to text converter reads a string of zeros and ones and rebuilds the ASCII characters those bits represent. Paste a continuous bit string whose length is a multiple of eight—each octet is one character, most significant bit first—and the decoder maps every group onto a byte from zero through two hundred fifty-five, then emits the matching ASCII string. Characters other than zero and one are rejected, as is a length that is not a multiple of eight, so a worksheet with a missing bit fails loudly instead of being padded in silence. Students check ASCII homework, developers recover labels from protocol dumps, and support teams explain why eight bits make one character. Failed validation is never billed.

How 8-bit groups become ASCII characters

Computers store printable letters as bytes, and a byte is eight bits. Classic ASCII assigns each English letter, digit, and punctuation mark a code from zero through one hundred twenty-seven; an eight-bit group can also represent values through two hundred fifty-five, which this decoder maps with a direct code-point conversion so every octet has a stable character. The most significant bit is on the left: capital H is seventy-two, written zero-one-zero-zero-one-zero-zero-zero, and lowercase e is one hundred one, written zero-one-one-zero-zero-one-zero-one.

Concatenate those two groups and you have the sixteen-bit string that decodes to He. The converter never invents padding. Continuous binary without spaces is the contract: the input must contain only the characters zero and one after outer whitespace is trimmed.

Spaces, commas, 0b prefixes, hexadecimal digits, and letters are not binary digits, so they fail with a message that names the offending character. This landing targets people who already hold a bit string and want ASCII text back—binary to text, binary to ASCII, eight-bit decoder—not people who start from a sentence and want bits, and not people converting a whole number into decimal or hexadecimal.

Practical tips, limits, and when to use a different tool

Do not paste space-separated octets unless you first strip the spaces—this contract rejects any character other than 0 and 1, including whitespace inside the string. This tool is not a hex decoder, not a decimal-from-binary integer converter, and not a UTF-8 multi-byte assembler: hex digits are base sixteen, a binary integer converter returns a number rather than letters, and UTF-8 would reject or reinterpret bytes above one hundred twenty-seven under a fatal decoder.

Use a hex-to-text tool when the input is already hexadecimal, a binary-to-decimal formatter when you need a base-ten integer, and a bidirectional text-to-binary encoder when you start from readable characters. When teaching, show the same capital letter next to its eight-bit pattern so students see that eight is not a suggestion: it is the width of a byte, and a missing bit is a framing error, not a rounding problem.

ASCII homework checks from bit strings

Students paste teacher-provided 8-bit groups, read the decoded letters, and compare them to hand-written ASCII tables without a spreadsheet or a silent pad.

Recover labels from protocol and firmware dumps

Engineers extract a continuous 0/1 field from a comment or a register dump and turn it back into the printable ASCII identifier it encoded on the wire.

How does binary to text decoding map each 8-bit group?

Each eight digits are read most significant bit first as a byte from 0 through 255. That byte is converted to one ASCII character. The groups concatenate into the decoded string returned in text.

Why must the binary string length be a multiple of 8?

A character is one byte, and a byte is eight bits. A length that is not a multiple of eight would be an incomplete character.

Can I paste spaces, commas, or a 0b prefix between bits?

No. After outer whitespace is trimmed, every remaining character must be 0 or 1.

Is this the same as a text to binary encoder?

No. This landing only decodes bits to ASCII. It does not encode text into bits and it does not switch modes. Use a text-to-binary converter when you start from letters.

Can I decode accented letters or emoji with this tool?

Not as UTF-8. Each 8-bit group becomes one character by its own code, so bytes beyond basic ASCII appear as single characters instead of being combined into accented letters or emoji. The tool is made for ASCII text.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/enc/binary-to-text

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/enc/binary-to-text \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"0100100001100101"}'
{
  "text": "0100100001100101"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.binary_to_text",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

max_chars100000
HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

How 8-bit groups become ASCII characters

If a student drops one bit and pastes fifteen digits, the length is not a multiple of eight and the task fails with invalid_input instead of silently gluing a zero onto the end, which would change the payload and hide the worksheet mistake.

Input contract, response shape, and error behaviour

The value is trimmed at the edges only; interior spaces remain and therefore fail the zero-and-one rule. After the trim, the string must be non-empty, must contain only the characters 0 and 1, must not exceed one hundred thousand characters, and must have a length that is a multiple of eight. Each slice of eight consecutive digits becomes one byte, most significant bit first, and that byte becomes one character in the decoded string. There is no mode switch: this capability only decodes. If you need the opposite direction, use a dedicated text-to-binary landing rather than hoping a hidden flag exists here. Send a JSON body with a required string field text. Aliases input, value, binary, data, and bits are accepted so scripts and form posts do not have to rename a payload. On success the response includes text with the recovered ASCII, binary with the trimmed bit string, groups as an array of eight-character strings, bytes as the integer code points, char_count as the number of characters, and bit_count as the number of bits. Failed validation—missing text, a non-string value, oversize input, a character other than 0 or 1, or a length that is not a multiple of eight—returns invalid_input and is never charged. Pricing is a flat $0.002 per successful request with unit item.

Practical tips, limits, and when to use a different tool

Round-trip checks against a known pair are the fastest smoke test: decode 0100100001101001 and confirm the result is Hi, then deliberately submit a seven-bit fragment or a string that contains a letter to assert that your client handles invalid_input. Keep payloads under the published character limit; multi-megabyte dumps belong offline. Failed tasks that return invalid_input do not consume prepaid balance, which keeps exploratory scripts cheap when learners paste incomplete bit groups.

Deterministic fixtures in codec unit tests

CI jobs assert that a known bit string decodes to a known ASCII token, and that a truncated group fails invalid_input instead of inventing a character.

What does a successful API call cost?

The browser tool is free and runs locally. API calls use prepaid KIT balance at $0.002 per successful request. Failed validation is never charged.

Read the full KIT documentation →