Octal Encoder / Decoder

Encode UTF-8 text to space-separated octal byte groups or decode octal back to text.

  • Runs locally in your browser
  • No upload required

Try it

Processed entirely in your browser; nothing is uploaded.

Result
110 151

Supported formats

Input
text
Output
text

Privacy

Runs entirely in your browser. Your input is never uploaded, stored, or sent to a third party.

Processing
In your browser
Privacy level
Browser only

Encoded 2 character(s) of UTF-8 text to 2 octal byte(s).

How it works

  • Read the input as UTF-8 bytes.
  • Rendered each byte as a three-digit octal group.
  • Joined the groups with single spaces.
  • Octal is an encoding, not encryption; it provides no confidentiality.
  • Octal is common in Unix file modes and escape sequences, where three digits represent one byte.

Methodology

  1. Encode by rendering every UTF-8 byte as a three-digit octal group, left-padded with zeros.
  2. Decode by splitting on whitespace, validating each group as an octal value at most 255, and parsing it to a byte.
  3. Reject malformed groups instead of guessing a value.

Usage

  1. Choose encode or decode.
  2. Paste text to encode, or octal groups to decode.
  3. Read the result; use Copy result to reuse it.

Examples

These are examples, not current values: they use fixed inputs, while the interactive tool computes live results in your browser.

Encode ASCII

jsonSelect to copy
{
  "mode": "encode",
  "value": "Hi"
}

Encode Unicode

jsonSelect to copy
{
  "mode": "encode",
  "value": "café 🌍"
}

Decode octal

jsonSelect to copy
{
  "mode": "decode",
  "value": "110 151"
}

Limitations

Where octal is used

Octal remains the natural notation for Unix file permissions and for byte escapes in shells. It represents the same bytes as hex, just with three-bit digit groups.

Frequently asked questions

Why do Unix tools show octal permissions?
Unix file modes pack three permission bits per digit, and base eight maps exactly to those three-bit groups, which is why octal is traditional there.
Why three digits per byte?
A byte is 0-255, and 255 is 377 in octal, so three digits are enough to represent every possible byte.

Sources

  1. ECMA-262: ECMAScript Language Specification — TC39
  2. RFC 4648: The Base16, Base32, and Base64 Data Encodings — IETF