User Rating 0.0
Total Usage 0 times
Separate multiple values with commas, spaces, or newlines.
Input Output Copy
Conversion History (0)
Is this tool helpful?

Your feedback helps us improve.

About

Bijective base-26 numeration maps every positive integer to a unique string over the alphabet {az} with no zero digit. This is the same system used by spreadsheet applications to label columns: 1a, 26z, 27aa, 702zz, 703aaa. Getting the mapping wrong in code generation, serialization, or data export pipelines produces silent off-by-one errors that corrupt downstream datasets. This tool computes both directions of the bijection and maintains a session history so you can audit conversions without re-entering values. It assumes input n1; the mapping is undefined for zero and negative integers.

number to letter bijective base 26 alphabetic numbering spreadsheet column alpha string converter

Formulas

The bijective base-26 system encodes a positive integer n as a string s = ckck−1c1 where each character ci {a, b, …, z} maps to values 1 - 26.

n = ki=1 ci 26i 1

The encoding algorithm iterates:

r = (n 1) mod 26
c = r + 1 character az
n = n 126 (floor)

Repeat until n = 0, then reverse the collected characters.

Where n = input positive integer, r = remainder after bijective modulo, c = character value (1 - 26), k = resulting string length.

Reference Data

NumberAlpha StringEquivalent Expression
1a1
2b2
13m13
26z26
27aa26 + 1
28ab26 + 2
52az26 + 26
53ba2 26 + 1
256iv9 26 + 22
702zz26 26 + 26
703aaa1 262 + 1 26 + 1
1152arh1 676 + 18 26 + 8
16384xfdExcel max column
18278zzz263 + 262 + 26
18279aaaaFirst 4-letter string
18432aafx1 263 + 1 262 + 6 26 + 24
475254zzzzzMax 5-letter string
1000000bdwgn6-digit milestone

Frequently Asked Questions

Standard base-26 uses digits 0-25 and requires a zero placeholder. Bijective base-26 uses digits 1-26 (mapped to a - z) with no zero. This means there is no ambiguity between, say, "a" and "aa" - they represent distinct values (1 and 27). Every positive integer maps to exactly one string, and every non-empty lowercase string maps to exactly one positive integer.
Because the digit set is {1, 2, …, 26} rather than {0, 1, …, 25}. Subtracting 1 before taking the modulus shifts the range so that n = 26 correctly yields remainder 25 (mapping to z) instead of 0. Without this offset, multiples of 26 would produce an empty character.
The tool accepts integers up to 20 digits. JavaScript loses integer precision beyond 253 1 (9,007,199,254,740,991), which is a 16-digit number producing a 11-character alpha string. Inputs beyond this threshold may yield incorrect results due to floating-point truncation. For cryptographic or arbitrary-precision needs, use a BigInt-based implementation.
Yes. Microsoft Excel, Google Sheets, and LibreOffice Calc all label columns using bijective base-26: A=1, Z=26, AA=27, and so on. Excel's maximum column is XFD=16384. The only difference is case - spreadsheets use uppercase. This tool outputs lowercase to match the npm lower-alpha convention.
Yes. Enter multiple values separated by commas, spaces, or newlines. The tool will process each value independently and display all results in a table. This is useful for generating column labels for data export scripts or mapping index arrays to alphabetic identifiers.
Toggle the conversion direction using the swap button between the input fields. In alpha-to-number mode, enter a lowercase string (e.g., arh) and the tool returns 1152. The reverse formula is: accumulate result = result × 26 + (character value) for each character left to right.