Convert hexadecimal to octal (hex to octal) as you type, with every step shown. This free online converter gives exact results for numbers of any size, and nothing you type leaves your browser.
1 Enter your value
From
To
0x
Examples
2 Your answer
Decimal
dec
Show in other bases
Tap any value to copy it.
See the working
Guide
How it works
Three steps, whether you are reading a memory address, a bit flag or a byte value.
1
Choose what to convert
Pick what you have and what you want: decimal, hexadecimal, binary or octal.
2
Type or paste a value
Write it however you like: 65,535, 0xFF, FFh, with commas, spaces or underscores.
3
Read the answer
It appears as you type, in every other base, with the working shown.
The formulas
A digit's value depends on its position. Every answer here uses one of these rules:
Hexadecimal to octal
go through binary: 4 bits per hexadecimal digit, 3 per octal digit
0x1A3 → 0001 1010 0011 → 110 100 011, so 0x1A3 is 0o643.
Octal to hexadecimal
go through binary: 3 bits per octal digit, 4 per hexadecimal digit
0o643 → 110 100 011 → 0001 1010 0011, so 0o643 is 0x1A3.
Hexadecimal to decimal
decimal = Σ digit × 16position
0x1A3 is 1 × 256 + 10 × 16 + 3 × 1 = 419, so the answer checks out.
Decimal to hexadecimal digit chart
The decimal values 0 to 15 are the single hexadecimal digits 0 to F. Click one to add it to the converter.
All conversions
Decimal, hexadecimal, binary and octal converter
One free tool for every direction. Use it as a decimal to hexadecimal converter, convert decimal to binary or octal, or work backwards as a hexadecimal to decimal converter that turns 0x to decimal values. It also converts hexadecimal to binary, binary to hexadecimal and octal to decimal, so it works as a full number base converter and hexadecimal calculator. Pick a conversion to start.
Use this hexadecimal to octal table as a quick hexadecimal to octal chart for common values, from 0 to 65,535.
Hexadecimal
Octal
0
0
1
1
2
2
3
3
4
4
5
5
6
6
7
7
8
10
9
11
A
12
B
13
C
14
D
15
E
16
F
17
10
20
20
40
40
100
64
144
7F
177
80
200
FF
377
100
400
200
1000
3E8
1750
400
2000
1000
10000
FFFF
177777
Help
Questions
Quick answers to what people most often ask about hexadecimal, decimal and binary.
01How do I convert hexadecimal to octal?
The easiest way to convert hexadecimal to octal is through binary. Write each hexadecimal digit as 4 bits. Then regroup the bits into groups of 3, starting from the right, and read each group as a octal digit.
02What is FF in octal?
0xFF in hexadecimal is 0o377 in octal (255 in decimal). Type FF into the converter above to see every step.
03What is 400 in octal?
0x400 in hexadecimal is 0o2000 in octal (1,024 in decimal).
04What is 10 in octal?
0x10 in hexadecimal is 0o20 in octal (16 in decimal). That is why 0x10 means sixteen, not ten.
05What is FFFF in octal?
0xFFFF in hexadecimal is 0o177777 in octal (65,535 in decimal). It is the largest unsigned 16-bit number.
06What is 7FFFFFFF in octal?
0x7FFFFFFF in hexadecimal is 0o17777777777 in octal (2,147,483,647 in decimal). It is the largest signed 32-bit integer.
07Can I convert hexadecimal to octal without going through decimal?
Yes. Go through binary instead: write each hexadecimal digit as 4 bits, regroup the bits into groups of 3 from the right, and read each group as a octal digit. For example, 0x1A3 is 0001 1010 0011, which regroups to 110 100 011, or 0o643.
08How do I convert hexadecimal to octal in Excel?
Use the HEX2OCT function: =HEX2OCT("FF") returns 377. It works the same way in Google Sheets. These functions only handle up to 10 input characters, and the binary ones only −512 to 511, so use this converter for larger numbers.
09How do I convert hexadecimal to octal in Python or JavaScript?
In Python, oct(int('FF', 16)) returns '0o377'. In JavaScript, parseInt('FF', 16).toString(8) returns '377'. Python handles any size; in JavaScript use BigInt for numbers above 2⁵³.
10Does the converter use two’s complement for negative numbers?
No. It keeps the minus sign, so −255 is −0xFF, −0b11111111 and −0o377. Computers usually store negative numbers in two’s complement, where the pattern depends on the width: −1 is 1111 1111 (0xFF) in 8 bits and 0xFFFF in 16 bits. To read a signed value whose top bit is set, subtract 2ⁿ: 0xFF as a signed 8-bit number is 255 − 256 = −1.
11Can I convert hexadecimal numbers with a fractional part?
The converter works with whole numbers. By hand, convert the fractional part by multiplying it by the target base again and again and keeping the whole-number part each time. For example, 0.5 × 16 = 8, so 0.5 is 0x0.8 in hexadecimal, 0b0.1 in binary and 0o0.4 in octal.
12How many hexadecimal digits are in a byte?
Two. One hexadecimal digit is 4 bits, so a byte (8 bits) is two digits, from 00 to FF (0 to 255). A 16-bit number is 4 digits, a 32-bit number is 8 and a 64-bit number is 16.
13Is there a limit to how big a hexadecimal number can be?
No. The converter uses exact whole-number arithmetic, so 64-bit, 128-bit and longer hexadecimal values convert to octal with every digit correct, with no rounding.
14What does “hex to oct” mean?
“hex to oct” is short for hexadecimal to octal, which means going from base 16 to base 8: a number written in base 16 is rewritten in base 8. For example, 0xFF becomes 0o377.
15Does this hexadecimal to octal calculator show the working?
Yes. It converts hexadecimal to octal with steps: open “See the working” under the answer to see each digit multiplied by its power of 16, then the result written in octal. Every answer is also shown in decimal, hexadecimal, binary and octal at once.
16Is this hexadecimal to octal converter free?
Yes. It is free with no sign-up, works online on phones, tablets and computers, and every hexadecimal to octal conversion runs in your browser, so nothing you type is sent anywhere.