Un cod de aeroport ICAO sau un identificator de locație ICAO este un cod alfanumeric, format din patru litere, care desemnează fiecare din aeroporturile din lume. Aceste coduri au fost definite de International Civil Aviation Organization și au fost publicate în documentul ICAO 7910: Location Indicators (românăindicatori de locație).
Codurile ICAO sunt folosite în controlul traficului aerian și în operările liniilor aeriene cum ar fi planificarea zborurilor. Ele nu sunt același lucru cu codurile IATA, întâlnite de publicul obișnuit și folosite de către companiile aeriene în orarele zborurilor, rezervări și operațiile legate de bagaje. Codurile ICAO sunt folosite de asemenea pentru identificarea altor locații precum stații meteo, stații internaționale de servicii ale zborurilor sau centre de control al zonelor, fie că acestea sunt amplasate sau nu în aeroporturi.
Spre deosebire de codurile IATA, codurile ICAO au o structură regională la bază, astfel încât ele nu sunt duplicate ci identifica un singur aeroport. În general, prima literă alocată după continent și reprezintă o țară sau un grup de țări de pe acel continent. A doua literă în general reprezintă o țară din acea regiune, iar celelate două litere rămase sunt folosite la identificarea fiecărui aeroport. Excepțiile de la această regulă sunt țările foarte întinse care au coduri de țară formate dintr-o singură literă, iar celelalte trei litere care rămân desemnează aeroportul.
În zona întinsă formată de Statele Unite și Canada, celor mai multor aeroporturi li se asociază codurile de trei litere IATA, care sunt aceleași cu codurile lor ICAO, însă fără litera K sau C de la început, d.e., YYC și CYYC (Calgary International Airport, Calgary, Alberta), IAD și KIAD (Dulles International Airport, Chantilly, Virginia). Aceste coduri nu trebuie confundate cu semnalele de apel pentru radio sau pentru televiziune, chiar dacă ambele țări folosesc semnale de apel de formate din patru litere care încep cu aceste litere.
Totuși, fiindcă Alaska, Hawaiʻi și alte teritorii din Statele Unite au propriile prefixe ICAO formate din două litere, situația pentru ele este similară altor țări mici, iar codurile ICAO ale aeroporturilor lor sunt în general diferite de identificatoarele FAA/IATA formate din trei litere. De exemplu, Hilo International Airport (PHTO comparativ cu ITO) și Juneau International Airport (PAJN comparativ cu JNU).
ZZZZ este un cod special care se folosește atunci când nu există nici un cod ICAO pentru aeroport, și este folosit de obicei în planurile de zbor.