軍艦旗（ぐんかんき、(Naval) Ensign）とは、軍隊（主に海軍）に所属する艦船であることを表章する為に掲揚する旗章である。軍艦は、国際慣習法（公海に関する条約第8条並びに国連海洋法条約第29条）により、国籍を示す外部標識(external marks)を掲示する必要があり、船舶における軍艦旗の掲揚は、それに該当する。軍艦旗は戦闘時には戦闘旗（Battle ensign）として用いられる場合もある。

また、軍艦旗とは別に、船の国籍を示す際に艦首部分に掲げる国籍旗（艦首旗とも、(Naval) Jack）が個別に定められている国があれば、軍艦旗のみを定めている国や、国籍旗のみを定めている国もあり、各国で異なっている。軍艦旗とは別に海軍旗を定めている国もある。

軍艦旗の掲揚 

平時において、軍艦は、停泊中は午前8時から日没までの時間、航海中は常時、艦尾の旗竿ないし斜桁（ガフ）に軍艦旗を掲揚する。戦闘時においては戦闘旗としての掲揚が行なわれる。

海上自衛隊礼式規則（昭和40年5月24日海上自衛隊達第33号）第21条（自衛艦旗を掲揚し又は降下する場合）によると、自衛艦において定時に自衛艦旗を掲揚し又は降下するときは、定時10秒前に喇叭を以て「気を付け」を令して定時に喇叭君が代（帝国海軍および陸軍で使用していたものと同じ喇叭用の曲（喇叭譜）で、一般の楽譜とも陸上自衛隊と航空自衛隊で使用する君が代の喇叭譜とも異なる）1回を奏するものとし、当直士官は、艦橋又は後甲板付近に措いて掲揚（降下）を指揮しつつ、自衛艦旗に対し挙手の敬礼を行う。艦橋及び露天甲板にある者は、自衛艦旗に対し挙手の敬礼を行い、その他の場所にある者は、姿勢を正す敬礼を行う。海上自衛官は、陸岸において自衛艦旗の掲揚又は降下を目撃するときは、その場に停止し、当該自衛艦旗に対し敬礼を行う。

音楽隊の乗り組んでいる自衛艦が、外国軍艦と同所に在泊し、定時に自衛艦旗を掲揚又は降下するときは、「国歌」を奏した後外国軍艦の首席指揮官の先任順序により逐次当該国の国歌1回を奏する。但し、外国の港湾に在泊するときは、「国歌」に続き当該国の国歌を先に奏するものとする。自衛艦が外国軍艦と同所に在泊し、定時の自衛艦旗の掲揚又は降下に際して外国軍艦において奏する「国歌」を聞き、又は自衛艦において外国の国歌を奏するときは、艦橋及び露天甲板にある者は自衛艦旗又は当該国の軍艦旗に対し挙手の敬礼を行い、その他の場所にある者は起立して姿勢を正す敬礼を行うものと定められている。かかる取扱いは海上自衛隊以外の海軍においても、基本的に同じである。これらの海上自衛隊における自衛艦旗に関する礼式については海上自衛隊の礼式も参照。

また、軍艦以外の船舶は、軍艦とすれ違う際、敬意を表してその掲げている国旗を半下して行なう敬礼（半旗）をするのが通例である。これを受けた軍艦は、軍艦旗を半下して答礼を行ない、また国際信号旗で“御安航を祈る(UW)”を掲揚して応える。

国連海洋法条約第三節において、潜水船その他の水中航行機器が無害通航権を行使するためには、沿岸国の領海においては海面上を航行し、かつ、その旗を掲げなければならないとされており（第20条）、潜水艦も他の軍艦に同じ権利を得るためには、国旗又は軍艦旗等を掲揚する必要がある。

アメリカ海軍や海上自衛隊のLCAC-1級エア・クッション型揚陸艇では、プロペラへの巻き込みを防ぐため、軍艦旗を掲揚せず、旗章を艇体へ塗装することで代用している。

各国の軍艦旗

日本の軍艦旗・自衛艦旗 

日本の艦尾に掲揚する旗については、江戸幕府が幕府海軍に導入した洋式船の「惣船印」として日の丸を制定していた。明治維新後の日本海軍でも、1870年10月27日（明治3年10月3日）制定の「海軍御旗章国旗章並諸旗章ヲ定ム（明治3年太政官布告第651号）」において、艦尾用の「海軍御国旗」及び船首旗章として白布紅日章が定められ、商船と同じく幕末以来の単純な日の丸を使用していた。

1889年（明治22年）10月7日、海軍旗章条例により帝国海軍の軍艦旗として十六条旭日旗を意匠とする旗が定められた（大日本帝国海軍の旗章も参照）。なお、旭日旗（十六条旭日旗）自体は軍艦旗制定から遡ること19年前の1870年6月13日（明治3年5月15日）、帝国陸軍が太政官布告第355号において「陸軍御国旗（1879年（明治12年）、「軍旗」に改称）」として、日本史上初めてこれを考案し定めていたものである。そのため帝国海軍の軍艦旗は、その遥か以前に考案・制定されていた帝国陸軍の軍旗（陸軍御国旗）を模倣したものにすぎない（旭日旗を参照）。しかしながら帝国陸軍の軍旗をそのままコピーするのではなく、旭日の日章位置が中央の軍旗に対して軍艦旗は旗竿側に寄るものとした。以降、十六条旭日旗は日本の軍艦旗として用いられたが、第二次世界大戦（太平洋戦争、当時呼称：大東亜戦争）の敗戦による海軍解体に伴い廃用となった。

その後、海上保安庁隷下の海上警備隊を経て、1952年8月に保安庁警備隊が発足した。これに伴い、掃海船を伴った海上保安庁の航路啓開部門が警備隊に移管され、警備隊は初めて船舶を保有することとなったが、この船舶に掲げる旗が必要になった。時間的な余裕が乏しかったことから、当初は国際信号旗の数字旗「7」で代用していたが、後に隊内から募集した図案をもとに、中央に赤色の桜花を配し、地は青色の横縞7本及び同幅の白色横縞9本を描いた「警備隊旗」が制定された。

その後、1953年（昭和28年）後半になると自衛隊創設の機運が高まっており、11月ごろから、従来の組織編成や旗章、服装などが見直されるようになっていた。警備隊旗は海上での視認性に問題があったこともあって、警備隊でもこれに代わる新しい旗章の制定を検討しており、部隊では旧軍艦旗を支持する意見が強かった。第二幕僚監部では、四囲の情勢はこれを許す状況にないのではないかとして、二の足を踏んでいたが、次の方針で新しい旗章を考案することとなった。
 直線的単色なもので一目瞭然、すっきりした形のものであること。
 一見して士気を昂揚し、海上部隊を象徴するに十分なものであること。
 海上において視認の利くものであること。海の色と紛らわしい色彩は避けて、赤又は白を用いた明色が望ましい。
当時、第一幕僚監部（後の陸上幕僚監部）でも隊旗の研究を行っていたが、同幕僚監部では東京芸術大学の指導を受けていたことから、第二幕僚監部でも第一幕僚監部を通じて同大学の意見を聞いたところ、「部隊の旗としては、旧海軍の軍艦旗は最上のものであった。国旗との関連、色彩の単純鮮明、海の色との調和、士気の昂揚等、すべての条件を満たしている」との回答があった。また、米内光政海軍大将の親戚に当たる画家の米内穂豊に、旭光を主体とする新しい自衛艦旗の図案を依頼したところ、「旧海軍の軍艦旗は黄金分割によるその形状、日章の大きさ、位置光線の配合など実に素晴らしいもので、これ以上の図案は考えようがない。それで、旧軍艦旗そのままの寸法で1枚書き上げた。お気に召さなければご辞退致します。画家としての良心が許しませんので」との申し出をうけた。

1954年（昭和29年）6月上旬に保安庁で旗章制定の審議が開かれた。旧海軍と同一の旗を用いるか否かに議論が集中したが、最終的には原案支持との結論に達した。6月9日の第5次吉田内閣の閣議で正式に決定され、自衛隊法施行令（昭和29年政令第179号）により帝国海軍と同じ規格の「自衛艦旗」が制定された。制定にあたり、吉田茂首相は「世界中でこの旗を知らない国はない。どこの海にあっても日本の艦（ふね）であることが一目瞭然で誠に結構だ。旧海軍の良い伝統を受け継いで、海国日本の護りをしっかりやってもらいたい」と述べた。

自衛艦旗は引渡式に続いて行われる自衛艦旗授与式により内閣総理大臣から交付され、除籍又は支援船に区分変更される際に返納されることとなっている。自衛艦旗授与式では儀礼曲『海のさきもり』が演奏される。

日本の軍艦旗は、このように日本陸軍旗（連隊旗）と同様に考えられている側面もあるが、陸上で部隊指揮官や司令部（特に連隊長や連隊本部）の所在地を示す軍旗とは異なり、国際法上の船舶の国籍を表示する機能が重要であることから扱いは異なっていた。日本陸軍の軍旗は連隊の象徴として編成時に陸海軍の大元帥たる天皇から親授されるものであったため、再交付は原則として行われなかった。そのため損傷したり褪色しても修理や再染色をしないことが多いどころか、むしろ酷く損傷していればいるほど、数多の激戦を経験して積み上げてきた確固たる伝統の証として、内外ともに広く認証及び珍重されていた。そのため連隊旗は房だけになり、旗自体の識別が困難で標識の体裁をなしていないものも珍しくなかった。これに対して軍艦旗は常時、雨や日光、潮風に晒されるため劣化が早く、あくまで消耗品として割り切られており、艦内には常に複数枚の予備が積み込まれていた（破損した軍艦旗は軍需部で交換された）。これは常に鮮明な旗を掲げることで、海上でも不備なく国籍確認が行われることが重視されていたからである。しかしながら、シンボルとしての軍艦旗は連隊旗程ではなくとも尊崇される存在であり、艦艇の総員退艦・沈没時には軍艦旗降下を経て回収することが求められていた（「瑞鶴」等）。

日本海軍では、長期出動で補充が出来なくなった場合、補修用生地（アルパカ）で信号員が縫製した。この作業のため、信号兵は航海学校教程で、軍艦旗および信号旗等の制作・補修の教練を受けていた。さらに高速で動き回る駆逐艦や潜航・浮上を繰り返す潜水艦の場合は特に消耗が激しいため、降雨時は手製軍艦旗で代用することもあった。通常、軍艦旗の管理は、国旗や信号旗類と共に信号部が担当。公式使用時のみ、御写真の捧持とともに内務科が担当する。軍艦旗には6種類（一幅半、二幅、三幅、四幅、六幅、八幅。一幅36cm）あり、艦種や式典によって掲揚する大きさが指定されていた。

なお帝国海軍の「戦闘旗」とは、各艦艇が戦闘の目的で出動する時、後部マストに掲揚した軍艦旗を指す。

海上自衛隊の艦首旗（首艦旗・国籍旗）も帝国海軍と同じく日章旗（日の丸）である。掲揚は港に停泊中に自衛艦旗が掲揚されている間には艦首に、航海中は指揮官が国籍を表示する必要があると認めた場合のみメインマストに掲揚する。また国旗と内閣総理大臣旗等又は指揮官旗とを併揚する際には、国旗は右舷に掲揚する。

陸上自衛隊の自衛隊旗（八条旭日旗）と違い、海上自衛隊の自衛艦旗は国際慣習上「国旗」と同様の扱いがされるため、式典等で観閲台の前を通る際は観閲官（観閲官の指揮官旗含む）は自衛艦旗に対して敬礼を行い、毎日掲揚・降下するも自衛艦旗であるため、日本の国旗は『艦首旗』『日章旗』『日の丸』と呼んで区別することが多い。なお主要艦船部隊以外の部隊（総監部、航空基地など）は陸空と同じく国旗を掲揚しており、単に『国旗』と称している。

イギリス及び連邦・旧植民地の海軍旗 
イギリス海軍の軍艦旗は、イングランドの国旗をベースとし、白地を赤十字で四分しカントンに国旗（ユニオンジャック）を配した「ホワイト・エンサイン」と呼ばれるものである。なお、青地（ブルー・エンサイン）であれば海軍予備隊旗あるいは政府船旗（もしくは一定の条件を満たした民間船旗）であり、赤地（レッド・エンサイン）であれば一般の商船旗である。艦首旗は国旗と同一。

このホワイト・エンサイン型の旗は、イギリス連邦諸国および植民地であった国の海軍旗に広く見られる。

イギリス海軍旗の間接的影響

アメリカ合衆国の海軍旗 

アメリカ合衆国海軍には個別の軍艦旗はなく、星条旗を掲揚する。現用の国籍旗は「ユニオン・ジャック（Union Jack、イギリス国旗の称とは別）」と呼ばれ、星条旗のカントン部を拡大したものである。

他に独立戦争時に用いられた「」と呼ばれる旗があり、星条旗と同じ13本の紅白のストライプを横切るかたちで描かれたガラガラヘビの下に「DONT TREAD ON ME（私を踏みつけるな）」のモットーが書かれている。
現代においては、最も長く現役の艦艇（2023年現在はブルー・リッジ）のみが国籍旗として掲揚することになっている。
アメリカ同時多発テロ事件をきっかけに、2002年よりファースト・ネイビー・ジャックが全艦艇の国籍旗として使われ、ユニオン・ジャックは連邦政府や商船など非海軍用旗と定められたが、対テロ戦争が一応の終息を見たため、2019年に元に戻された。

これと似たもので、アメリカには「」がある。こちらではガラガラヘビはとぐろを巻く図案で、黄色地である。これは国籍の識別という国籍旗本来の目的を阻害しないためである。一般的には民間用であるが、歴史的に大陸海兵隊で用いられた経緯などから、現在もアメリカ海兵隊で使われることがあるほか、アメリカ陸軍のACUワッペンにも同じ図案があり、最近のティーパーティー運動、また2021年アメリカ合衆国議会議事堂襲撃事件でトランピストによって打ち振られるなど、“愛国”的な意図でよく用いられる。

ロシアの海軍旗 
ロシアでは帝政時代の17世紀末、ピョートル大帝のデザインによる、白地に青十字の聖アンドレイ十字旗が海軍の軍艦旗に定められた。1992年、ソビエト連邦の崩壊後のロシア連邦になってから旧国旗とともに復活した。

ドイツの海軍旗 
ドイツの海軍旗は、政体の変動による国旗の変遷と共に変化しているが、全体または一部に国旗と同一の色（黒・赤・金又は黒・白・赤）を配し、中央やや旗竿寄りに国を象徴する紋章・意匠を配するパターンは概ね共通していた。ドイツ連邦共和国の海軍の軍艦旗は、スカンディナヴィア半島・バルト海沿岸諸国で伝統的に使われてきた燕尾形のものになった。

中国の海軍旗 
中国の軍艦旗は、赤地に黄の星とやはり黄の記号風表示。この記号（に見えるもの）は漢数字「八一」を図案化したもので、人民解放軍建軍の日とされる南昌起義のあった1927年8月1日を意味する。陸軍はこの青白の部分が緑で、空軍は淡青となる。

中華民国(台湾)の軍艦旗 
中華民国(台湾)海軍の軍艦旗は国旗（青天白日満地紅旗）と同一である。

その他の海軍旗

燕尾形海軍旗 
スカンディナヴィア半島 - バルト海沿岸諸国は伝統的に、旗の右側（旗竿の反対側）に燕尾形の切込みを入れたものを海軍旗としてきた。第二次世界大戦後のドイツ連邦軍も、この伝統に習って海軍旗を燕尾形にしている。

その他

民間船

沿岸警備隊 
独立した沿岸警備隊を有する国では、海軍との違いを明確にするため、別途制定された船艇旗（エンサイン）を掲揚することがある。海上保安庁では羅針盤を図案化した「海上保安庁庁旗」を制定しており、船舶の引渡式ではマストから造船会社の社旗を降下、海上保安庁庁旗を掲揚して引渡が完了する。

公船・商船 
沿岸警備隊以外の公船や商船は船尾に国旗（商船旗）、船首旗に社旗を掲げる。掲揚するのは船籍の国旗であるため民間企業では所在地と異なる国旗を掲揚する船も多い（便宜置籍船）。

造船会社では顧客に引き渡すまで社旗を掲げ、引渡式で顧客の使用する旗に切り替える。

国際法とは無関係だが、日本の漁船は縁起を担ぐため出港・入港時に大漁旗と呼ばれる旗を掲げる慣習がある。