北约代号(英语:NATO reporting name,又译为北约命名),是冷战时期北大西洋公约组织替苏联与中华人民共和国军事装备所起的编号与命名。之所以会有北约代号的出现,是因为在冷战时代上述两个国家的军事装备之实际代号与命名通常都不为西方国家所知悉。且苏中两国官方并无北约国家那种赋予各军事装备代号的传统,因此很多装备代号不存在。苏联甚至为并不存在的武器赋予编号,以欺骗间谍。为便于内部沟通,北约单方面制定了这一命名系统。部分过去曾是华沙公约组织成员、但已加入北约的东欧国家,如捷克、斯洛伐克、波兰、匈牙利、保加利亚等,现今仍经常使用俄制军火;然而这些国家所持有之俄制军火型号已从原先苏联的内部代码改为北约代码,而非现今俄罗斯的GRAU编号(俄语:Индекс ГРАУ)。即使使用与俄文相同之西里尔字母的保加利亚,该国现今所拥有的俄制军火仍以北约代码登录。北约代号对命名敌对国家或不同意识形态势力的军事装备通常为贬义词。
北约负责维护这些名字的列表,命名中的第一个字母指出装备的用途。例如战斗机使用字母“F”起头,轰炸机使用字母“B”起头,直升机使用“H”起头,反坦克导弹用“S”起头,地对空导弹用“G”起头。对于飞机的命名,单音节名字用于搭载活塞发动机的机种上,双音节名字则用于喷气发动机机种上。
在某些情况下,美国国防部会进一步扩充北约命名。例如在北约的规则中,安装于舰艇或潜艇上的地对空导弹系统之命名通常与其陆基版本的命名相同,尽管它们之间仍然有小幅度的差别。但美国国防部对这些相同基础但规格不同的系统,就使用有额外后缀的不同代号系统(例如以“SA-N-”取代北约的“SA-”,但为求简便,这些系统的昵称仍然使用陆基系统相同的名称。如果没有对应的陆基系统,就制订新的名称称呼之。
苏联军方并不替旗下的军事设备特别制订官方的通用命名,但如同其他国家的空军,苏联空军内部也有替飞机命上非官方昵称的习惯。通常,苏联的飞行员都不会直接使用北约代号(无论是原名或是译回俄文的称法)来称呼他们自己的军机。这主要是因为冷战时代双方之间的资讯沟通并不通畅,很多苏联飞行员长时间以来都不知道有北约代号这种事物存在,且北约对苏联武器的昵称多含贬义或戏谑感情。
随着苏联解体,大部分的加盟共和国成立了独联体,而独联体最大的武器生产国俄罗斯制定了“GRAU编号(俄语:Индекс ГРАУ)”(GRAU是俄罗斯火炮导弹指挥部的缩写),并套用于所有的俄制武器。编号的格式为“数字+英文字母+数字”,下面为其中部分机种与北约代号相对应的范例:
然而俄罗斯的GRAU编号在国际军火出口市场上,不如北约代号来得广泛使用,而且北约代号比GRAU的编号格式较容易记忆。故在国际军火市场上,俄制军火的北约代号之可见度反而比GRAU较为常见,也容易使外国买主一目了然。
一般都以无线电代码的英文字首命名。
但也有少数例外,如阿库拉级核潜艇(Akula,俄文“鲨鱼”)、台风级核潜艇(Typhoon)。
一般都以中国朝代命名,而解放军方面则以数字命名。