Skip to content
πŸ› οΈToolsShed

Hat Size Converter

Convert hat sizes between US, UK, European, and centimeter measurements.

HatSizeConverter.fullChart

cmHatSizeConverter.usSizeHatSizeConverter.ukSizeHatSizeConverter.euSize
516 3/86 1/451
526 1/26 3/852
536 5/86 1/253
546 3/46 5/854
556 7/86 3/455
5676 7/856
577 1/8757
587 1/47 1/858
597 3/87 1/459
607 1/27 3/860
617 5/87 1/261
627 3/47 5/862
637 7/87 3/463
6487 7/864

HatSizeConverter.measureTitle

HatSizeConverter.measureText

About this tool

Hat sizes vary significantly across countries and manufacturers, making it frustrating to find the right fit when shopping online or traveling. This hat size converter lets you instantly translate between US, UK, European (measured in centimeters), and other common sizing systems, so you can confidently order hats from any part of the world without guesswork.

Simply select your current hat size system, enter the measurement or size, and choose the target system you want to convert to. The tool displays all equivalent sizes across formats in real-time, making it easy to compare options. Whether you're buying a fedora from Europe, a baseball cap from Japan, or ordering a custom hat online, this converter eliminates confusion and ensures a proper fit every time.

Frequently Asked Questions

Code Implementation

# Hat size conversion table (circumference in cm)
HAT_SIZES = [
    {"cm": 51, "us": "6 3/8", "uk": "6 3/8", "eu": 51},
    {"cm": 52, "us": "6 1/2", "uk": "6 1/2", "eu": 52},
    {"cm": 53, "us": "6 5/8", "uk": "6 5/8", "eu": 53},
    {"cm": 54, "us": "6 3/4", "uk": "6 3/4", "eu": 54},
    {"cm": 55, "us": "6 7/8", "uk": "6 7/8", "eu": 55},
    {"cm": 56, "us": "7",     "uk": "7",     "eu": 56},
    {"cm": 57, "us": "7 1/8", "uk": "7 1/8", "eu": 57},
    {"cm": 58, "us": "7 1/4", "uk": "7 1/4", "eu": 58},
    {"cm": 59, "us": "7 3/8", "uk": "7 3/8", "eu": 59},
    {"cm": 60, "us": "7 1/2", "uk": "7 1/2", "eu": 60},
    {"cm": 61, "us": "7 5/8", "uk": "7 5/8", "eu": 61},
    {"cm": 62, "us": "7 3/4", "uk": "7 3/4", "eu": 62},
    {"cm": 63, "us": "7 7/8", "uk": "7 7/8", "eu": 63},
]

def find_hat_size(cm: float) -> dict | None:
    # Find exact match or nearest
    exact = next((s for s in HAT_SIZES if s["cm"] == int(cm)), None)
    if exact:
        return exact
    # Nearest
    return min(HAT_SIZES, key=lambda s: abs(s["cm"] - cm))

# Convert cm to US/UK/EU sizes
result = find_hat_size(57)
print(f"Head circumference: {result['cm']} cm")
print(f"US size:  {result['us']}")
print(f"UK size:  {result['uk']}")
print(f"EU size:  {result['eu']}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.