2026年版:静的サイトジェネレーター(Astro, Hugo, 11ty)の性能比較と選び方
2026年の静的サイトジェネレーター(SSG)の世界は、かつてないほど多様化しています。開発者は、驚異的な速度を誇るGoベースのHugo、アイランドアーキテクチャの先駆者Astro、そしてミニマルで柔軟な11ty(Eleventy)から選択します。それぞれ異なるシナリオで優れており、適切なツールを選ぶにはトレードオフを理解することが不可欠です。
この比較では、ビルド速度、テンプレートエンジン、コンテンツ管理、画像最適化、国際化(i18n)、デプロイについて評価します。
ビルド速度
| SSG | 言語 | ビルド時間(1万ページ) | コールドスタート | 開発サーバーリロード |
|---|---|---|---|---|
| Hugo | Go | 約3〜5秒 | 瞬時 | 約50ms |
| Astro | Node.js(TypeScript) | 約45〜90秒 | 中程度 | 約200ms |
| 11ty | Node.js(JavaScript) | 約60〜120秒 | 中程度 | 約300ms |
Hugoはビルド速度で圧倒的です。Goベースのアーキテクチャにより、数千ページを数秒で処理でき、大規模なドキュメントサイトやブログに最適です。Astroは、特に部分ハイドレーションアプローチにより、その機能セットに対して優れた速度を提供します。11tyは大規模サイトでは遅くなりますが、シンプルさゆえに小規模プロジェクトではオーバーヘッドが少なくて済みます。
テンプレートと柔軟性
HugoはGoテンプレートを使用し、独自の.RenderShortcodesパイプラインを持ちます。学習曲線は急ですが、ショートコードシステムは強力です。
{{ $pages := where .Site.RegularPages "Section" "blog" }}
{{ range $pages }}
<article>
<h2><a href="{{ .RelPermalink }}">{{ .Title }}</a></h2>
<p>{{ .Summary }}</p>
</article>
{{ end }}
AstroはHTML、JavaScript、CSSを単一ファイルコンポーネントに統合した.astroファイルを使用します。アイランドアーキテクチャにより、React、Vue、Svelte、SolidなどのUIフレームワークをサポートします。
---
const { posts } = Astro.props;
---
{posts.map(post => (
<article>
<h2><a href={post.url}>{post.title}</a></h2>
<p>{post.excerpt}</p>
</article>
))}
11tyでは、Nunjucks、Liquid、Handlebars、EJS、または生のJavaScriptからテンプレート言語を選択できます。この比類のない柔軟性が11tyの最大の強みです。
コンテンツ管理
| 機能 | Hugo | Astro | 11ty |
|---|---|---|---|
| コンテンツ形式 | Markdown、カスタムフロントマター | Markdown、MDX、Content Collections | Markdown、任意の形式 |
| タクソノミー | タグ、カテゴリ、カスタム | フロントマターベース | タグ/コレクションベース |
| データファイル | data/内のYAML/TOML/JSON | src/data/内のYAML/JSON | _data/内のJSモジュール |
| ヘッドレスCMS | Decap CMS、CloudCannon | Decap CMS、Sanity、Storyblok | Decap CMS、任意のJSベースCMS |
3つともMarkdownフロントマターをサポートしています。AstroのContent CollectionsはZodスキーマによる型安全なフロントマター検証を提供し、チーム開発で際立った機能です。
// Astro Content Collection スキーマ
import { defineCollection, z } from 'astro:content';
const blogCollection = defineCollection({
schema: z.object({
title: z.string(),
date: z.date(),
tags: z.array(z.string()).optional(),
}),
});
画像最適化
Hugoは.Resize、.Fill、.Fit、.Filterによるビルトイン画像処理を備えています。WebPやAVIF出力に対応。ゼロコンフィグですが、命令形の構文です。
{{ $image := .Resources.Get "photo.jpg" }}
{{ $thumb := $image.Fill "400x300 webp" }}
<img src="{{ $thumb.RelPermalink }}" width="400" height="300">
Astroは@astrojs/imageまたはAstro標準のImageコンポーネントにより、自動最適化、レスポンシブsrcset、遅延ロードを提供します。
11tyはビルトインの画像処理がありません。eleventy-imgプラグインを使用すると同様の機能が得られます。セットアップは必要ですが、完全な制御が可能です。
国際化(i18n)
| SSG | i18nサポート |
|---|---|
| Hugo | ネイティブ多言語対応、言語別コンテンツディレクトリ、翻訳リンク |
| Astro | @astrojs/i18n(2025年以降安定版)、URLベースのロケールルーティング |
| 11ty | コミュニティプラグイン、手動のコレクションベースアプローチ |
Hugoは最も成熟したi18nシステムを備えており、翻訳管理とフォールバック動作がビルトインされています。Astroのi18nサポートも大幅に成熟し、URLプレフィックス、ロケール検出、翻訳関数を提供しています。
デプロイとエコシステム
3つとも任意の静的ホスト(Netlify、Vercel、Cloudflare Pages、AWS S3)にデプロイできます:
- Hugo — 単一バイナリデプロイ、ランタイム依存関係なし
- Astro — 静的出力またはSSR(Node.js、Deno、エッジ関数)としてデプロイ可能
- 11ty — ランタイムゼロの静的出力
ユースケース別おすすめ
| ユースケース | おすすめSSG |
|---|---|
| 大規模ドキュメントサイト(5000ページ以上) | Hugo |
| フレームワークコンポーネントを含むマーケティングサイト | Astro |
| シンプルなブログ / 個人サイト | 11ty または Hugo |
| Eコマースランディングページ | Astro |
| 多言語コーポレートサイト | Hugo |
| カスタムビルドパイプライン / 既存テンプレート | 11ty |
| SSR + 静的ハイブリッド | Astro |
まとめ
2026年に「唯一のベストなSSG」は存在しません — 適切な選択はプロジェクトの要件によって異なります。Hugoはビルド速度と多言語サイトで圧倒的です。Astroはコンポーネント駆動のアーキテクチャとフレームワーク統合で開発者体験をリードします。11tyはミニマリズムと柔軟性のチャンピオンであり続けています。
プロジェクトの規模、チームの専門知識、機能要件を評価してください。100記事のブログはどのSSGでも問題なく動作します。5万ページのエンタープライズドキュメントポータルはHugoの速度が活きます。インタラクティブなReactウィジェットを含むコンテンツサイトはAstroの得意分野です。適切に選択することで、静的サイトは高速で保守しやすく、将来性のあるものになります。
