Punycode (вимовляється як "пунікод" або "пьюнікод") - стандартизований метод перетворення послідовностей Unicode-символів у так звані ACE-послідовності, які складаються тільки з алфавітно-цифрових символів, як це дозволено в доменних іменах. Punycode був розроблений для однозначного перетворення доменних імен в послідовність ASCII-символів.
Найважливішою причиною введення Punycode був той факт, що в затвердженій стандартом системі доменних імен дозволені тільки 26 символів латинського алфавіту, цифри від 0 до 9 і дефіс. Для англійської та деяких інших мов з латинським алфавітом цього достатньо, проте інші мови, в тому числі і з латинським алфавітом, містять додаткові символи, наприклад, ä, ö або ü.
В якості базисних символів виступають символи латинського алфавіту від a до z (без відмінності між великими та малими буквами), цифри від 0 до 9 і дефіс «-»; всього 37 символів.