2025 年に favicon.ico は必要か
2025 年の favicon.ico 対応についての実務ガイドです。現行ブラウザでは必須ではありませんが、サーバーログのノイズを減らし、古いツールとの互換性を残すために置く理由を解説します。
結論から
技術的には、現行のブラウザ(Chrome、Edge、Safari、Firefox)は .ico ファイルを必須としません。ただし実務上は、残しておくことを強く推奨します。
favicon.ico が無いと、サーバーログは 404 で埋まります。古いボットや RSS リーダーの多くは HTML の header を読まず、ルートの /favicon.ico を直接取りにいきます。
2025 年の推奨構成
すべての用途をカバーするのに、必要なファイルは 3〜4 個です。レガシー形式を何十サイズも作る必要はありません。
1. favicon.ico(32×32)— レガシー互換とフォールバック
- 必ずサイトのルートディレクトリ(/favicon.ico)に置く
- 主にログのエラーを防ぎ、古いツール向けの受け皿になります
2. icon.svg — 現行の標準(第一候補)
- 現行ブラウザが優先します
- 品質を落とさず、いくらでも拡縮できます
3. apple-touch-icon.png(180×180)— iOS デバイス
- iPhone / iPad で「ホーム画面に追加」したときに使われます
- 複数サイズは不要です。180×180 ですべての iOS デバイスをカバーできます
4. manifest.webmanifest(任意)
- 主に Android と PWA インストール向けです
- 192×192 と 512×512 の PNG アイコンを定義します
実装コード(HTML / Nuxt Head)
いちばん短く、現行の書き方です。
<head>
<!-- 1. Modern SVG (highest priority) -->
<link rel="icon" href="/icon.svg" type="image/svg+xml">
<!-- 2. Apple iOS icon -->
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
<!-- 3. Traditional .ico (fallback) -->
<!-- Note: Adding sizes="any" tells Chrome this is a bitmap, -->
<!-- so Chrome will prefer SVG over ICO -->
<link rel="icon" href="/favicon.ico" sizes="any">
<!-- 4. Android/PWA configuration -->
<link rel="manifest" href="/manifest.webmanifest">
</head>Nuxt.js プロジェクトの場合
nuxt.config.ts またはページコンポーネントで:
useHead({
link: [
{ rel: 'icon', href: '/icon.svg', type: 'image/svg+xml' },
{ rel: 'apple-touch-icon', href: '/apple-touch-icon.png' },
{ rel: 'icon', href: '/favicon.ico', sizes: 'any' },
{ rel: 'manifest', href: '/manifest.webmanifest' },
],
})favicon.ico を残す理由
サーバーログをきれいに保つ
favicon.ico が無いと、サーバーログは 404 で埋まります。ボット、クローラー、RSS リーダーが /favicon.ico を自動で取りにいくたびに、エラー行が増えます。ノイズが増え、本当の問題を見つけにくくなります。
古いツールとの互換
古いツール、RSS リーダー、ブックマーク管理、ブラウザ拡張の多くは、ルートに favicon.ico がある前提です。現行ブラウザでは不要でも、これらのツールは HTML の header を読まず、ルートへ直接取りにいくことが多いです。
コストはほぼゼロ、効果は大きい
32×32 の favicon.ico はファイルサイズが小さく(通常 2KB 未満)、メンテも不要です。きれいなログと広い互換性の方が、このコストを大きく上回ります。
現行のやり方:SVG を第一候補に
互換のために favicon.ico は残しつつ、主たるファビコンは SVG にしてください。
- 解像度に依存しない: 16×16 から 512×512 まで、どのサイズでもくっきり見えます
- ファイルが小さい: 同等の PNG より小さいことがよくあります
- 先まで使える: 高 DPI ディスプレイや今後のデバイスでも問題なく動きます
- ファイルは 1 つ: SVG 1 つで、複数の PNG サイズを置き換えられます
現行ブラウザ(Chrome、Firefox、Safari、Edge)はすべて SVG ファビコンに対応しています。ICO の link に sizes="any" を付けると、使えるときは SVG が選ばれます。
要点
- .ico は消さない: ブラウザが使わなくても、ルートに残してログをきれいに保ち、古いツールとの互換を維持してください。
- これからは SVG: 解像度の問題のほとんどは、SVG 1 つで足ります。
- 構成は最小で: favicon.ico、icon.svg、apple-touch-icon.png、任意で manifest.webmanifest の 3〜4 ファイルで、用途をカバーできます。
- 優先順が効く: 先に SVG、次に sizes="any" の ICO を書き、現行ブラウザが最適な形式を選ぶようにしてください。
まとめ
2025 年、現行ブラウザに favicon.ico は技術的には不要です。それでも置くのが実務の標準です。ログのノイズを防ぎ、古いツールとの互換を残し、コストはほぼゼロです。現行の SVG ファビコンと組み合わせれば、今とこれから両方に足る構成になります。
要点は単純さです。主たるファビコンは SVG 1 つ、互換用に小さな ICO、iOS 向けに Apple Touch Icon、任意で PWA 用の manifest。この最小構成で用途をカバーでき、何十サイズも管理する必要はありません。