Cyber SEO:50%オフ
設定

当社はプライバシーを重視しており、ウェブサイトの基本機能に必要のない特定のストレージを無効にするオプションを提供しています。カテゴリーをブロックすると、ウェブサイトでの体験に影響が出る可能性があります。詳細はこちら (クッキーポリシー)

すべてのクッキーを受け入れる

Astro SEO:Astro サイトを Google で上位表示させ、AI に引用されるための方法

Astro SEO を手順ごとに解説します。静的レンダリングかサーバーレンダリングか、head タグ、サイトマップ、hreflang、画像、JSON-LD 構造化データ、リダイレクトまで、すべて Astro 公式ドキュメントで確認済みです。設定チェックリストとして公開前の確認にもご活用ください。

公開日
25/10/2026
更新日
25/10/2026
読了時間
16 分
見出し「Astro SEO」のコードカードに canonical リンクタグを含む短いコードが載り、緑の Static と青の @astrojs のラベルが浮いている

ツール

このページの内容

要点

Astro はページを純粋な HTML として事前レンダリングし、指定しない限りブラウザに JavaScript を送らないため、SEO に最も向いた Web フレームワークの一つです。Google や AI アシスタントのクローラーは、最初のリクエストで完全なコンテンツを受け取れます。ただし Astro が SEO を代行してくれるわけではありません。タイトル、メタディスクリプション、canonical、hreflang、構造化データ、リダイレクトは自分で追加する必要があり、その多くは共通の head コンポーネントと公式サイトマップ統合で対応します。

さらに詳しく知るには、こちらに質問

クイック診断

SEOはあなたに向いている?どう始めるべき?

質問 1 / 425%
あなたの商品はGoogleで検索されていますか?

Astro SEO とは、このクリーンな HTML を上位表示されるページに仕上げる作業です。Google の JavaScript SEO の基本は、JavaScript サイトがクロール、レンダリング、インデックス登録の三段階で処理されると説明し、すべてのボットが JavaScript を実行できるわけではないため、サーバーサイドレンダリングや事前レンダリングは今でも優れた選択だと述べています。Astro は初期状態でこの位置からスタートします。本ガイドでは残りの設定を一つずつ取り上げ、すべての挙動を Astro 公式ドキュメントで確認しました。ちなみに、いまお読みの sorank.com も Astro で動いています。

Astro は SEO に向いているのか?

技術面では、向いています。Astro はビルド時にコンポーネントを HTML にレンダリングし、React や Vue などのフレームワークが通常ブラウザに送る JavaScript を取り除きます。そのため、JavaScript SEO のガイドで紹介している典型的な問題(空の HTML シェル、レンダリング後にしか現れないコンテンツ、本物のアンカータグではないリンク)を避けられます。シングルページアプリケーションのルーティングの落とし穴もありません。Astro の各ルートは、独自の HTML ファイルを持つ実在の URL だからです。

Astro がやらないことも同じくらい重要です。組み込みの SEO プラグイン、自動生成のメタディスクリプション、自動の canonical タグ、構造化データはどれもありません。次の表で、最初から手に入るものと自分で作るものを整理します。

SEO 要素Astro が提供するもの自分で追加するもの
クロール可能な HTMLデフォルトで事前レンダリングされた HTML不要(クライアント側だけで描画する内容がなければ)
タイトルとメタディスクリプション各レイアウトで自由に制御できる head各ページから値を渡す共通 SEO コンポーネント
canonical タグ絶対 URL を組み立てる Astro.site と Astro.urllink タグ本体と、末尾スラッシュの統一
XML サイトマップ公式統合 @astrojs/sitemap導入、site オプションの設定、非公開ページの除外
hreflangi18n ルーティングとサイトマップの i18n オプション各ページの head 内の alternate リンク
画像ファイルを最適化する Image と Picture コンポーネント内容を説明する alt テキスト、適切なサイズ
構造化データ専用機能なしページ種別ごとの JSON-LD スクリプト
リダイレクト設定ファイルの redirects オプション静的サイトではホスティング側での本物の 301

静的レンダリングとサーバーレンダリング、SEO に向くのはどちらか?

オンデマンドレンダリングに関する Astro のドキュメントは明快です。デフォルトでは、ページ、ルート、API エンドポイントはビルド時に静的ページとして事前レンダリングされます。SEO の観点では、静的出力が最も安全な既定値です。各 URL は完成済みの HTML ファイルで、CDN から配信され、高速で、どの訪問者にもどのボットにも同じ内容が届きます。

オンデマンド(サーバー側)レンダリングには、ホスティング先に合わせたアダプター(Node、Netlify、Vercel、Cloudflare など)が必要です。そのうえで、export const prerender = false で特定のルートだけを事前レンダリングから外すか、output: 'server' でプロジェクト全体を切り替えて静的ページを個別に戻します。どちらのモードも完全な HTML を出力するので、Google から見える内容は同じです。違いは別のところにあります。

  • 速度:静的ファイルは即座に返されますが、サーバーでレンダリングするページはサーバーの応答時間に左右され、Largest Contentful Paint に影響します。
  • 鮮度:在庫、価格、検索結果など頻繁に変わるページには、サイト全体を再ビルドするより時間のかからないサーバーレンダリングが向いています。
  • ツール:サイトマップなど一部の統合は、サーバー側の動的ルートを認識できません(後述)。

実務上のルールは、マーケティングページ、ブログ記事、ドキュメントは静的のままにし、リアルタイムのデータが必要なルートだけをオンデマンドでレンダリングすることです。Astro のドキュメントも同じく、ほとんどのページがオンデマンドレンダリングを必要とするまではデフォルトの静的モードを維持するよう勧めています。

Astro でメタタグと canonical URL を設定するには?

SEO コンポーネントを一つ作り(BaseHead や Seo という名前がよく使われます)、すべてのレイアウトの head に読み込みます。タイトル、説明文、任意の画像、任意の noindex フラグを受け取り、次を出力します。

  1. ページごとに固有の title タグ(主要キーワードを前のほうに配置)
  2. ページごとに手書きするメタディスクリプション(検索結果のスニペットになります)
  3. Astro.url.pathname と設定の site 値から絶対 URL として組み立てる canonical タグ
  4. リンクプレビュー用の Open Graph タグやソーシャルタグ(タイトル、説明、画像、URL)
  5. インデックスから外すべきページ用の robots メタタグ

まず astro.config.mjs で site オプションを設定してください。canonical、サイトマップ、ソーシャルタグのすべてがこの値に依存します。次に trailingSlash のポリシー('always' か 'never')を決めて守り、/blog/post と /blog/post/ が同じページの二つのバージョンとして競合しないようにします。トラッキング用パラメーターで重複ページが生まれないよう、canonical からはクエリ文字列を除きます。

ヒント

記事を content collections で管理している場合は、コレクションのスキーマでタイトルと説明文を必須フィールドにしておきましょう。執筆者がメタディスクリプションを書き忘れるとビルドが失敗するので、空のスニペットが Google に届くことはありません。

Astro でサイトマップと robots.txt を生成するには?

@astrojs/sitemap のページで解説されている公式統合を使います。npx astro add sitemap を実行すると、インストールと設定への追加が行われます。site オプションが必須で、ビルド時に番号付きファイル(sitemap-0.xml、大規模サイトではさらに追加)を参照する sitemap-index.xml を書き出します。1 ファイルあたりの上限はデフォルトで 45,000 件で、entryLimit オプションで変更できます。この形式が初めての方は、用語集の XML サイトマップで Google がどう利用するかをご覧ください。

SEO にとって重要な設定は三つです。

  • filter:各ページの URL を受け取る関数です。サンクスページ、サイト内検索、下書き、noindex のページには false を返し、サイトマップにはインデックス可能な URL だけを載せます。
  • i18n:言語フォルダを言語コードに対応づけ、各エントリに hreflang の代替 URL を追加します。
  • customPages:統合が自力で見つけられない URL を追加します。

注意

ドキュメントによると、この統合は SSR モードの動的ルートについてサイトマップのエントリを生成できません。商品ページや記事ページをオンデマンドでレンダリングしている場合、事前レンダリングに切り替えるか手動で追加しない限り、それらはサイトマップから漏れます。

robots.txt は、ほとんどのサイトで public フォルダに静的ファイルを置けば十分です。ステージングと本番で内容を変えたい場合は、エンドポイント(src/pages/robots.txt.ts)から生成します。どちらの場合も sitemap-index.xml を指す Sitemap 行を加え、公開前に robots.txt チェッカーで結果を確認してください。同じエンドポイントの手法で llms.txt ファイルも作れます。内容については llms.txt ファイルの設置方法のガイドで解説しています。

Astro で hreflang と多言語サイトを扱うには?

Astro に組み込まれた i18n ルーティングが URL 側を担います。設定で defaultLocale と locales のリストを宣言し、デフォルト言語にもプレフィックスを付けるか(prefixDefaultLocale)を選びます。getRelativeLocaleUrl などのヘルパー関数がローカライズされたリンクを組み立て、Astro.currentLocale が各ページに現在の言語を伝えます。

ルーティングのガイドは head 内の hreflang タグを扱っていないため、SEO コンポーネントで自分で書く前提で計画してください。各ページで、言語版ごとに alternate リンクを一つずつと x-default を出力し、すべて絶対 URL にします。さらに、各バージョンが他のすべてのバージョンを列挙する必要があります(相互リンク)。ルーティングと同じ言語リストから生成すれば、存在しないページを指す代替リンクという最も多いミスを防げます。いくつかの URL でロジックを確かめるには、hreflang ジェネレーターでページ一つ分のタグ一式を出力できます。そのうえで、二つ目のシグナルとしてサイトマップの i18n オプションを有効にします。

画像とアイランドは速度と Core Web Vitals にどう影響するか?

Astro が最も強みを発揮するのは速度で、それは Core Web Vitals に表れます。Astro の画像ガイドによると、astro:assets の Image コンポーネントはローカル画像を最適化し、形式を変換し、遅延読み込みと非同期デコードを付与し、画像の寸法を推定して Cumulative Layout Shift を防ぎます。alt 属性は必須で、画像 SEO の基本ルールが自然に守られます。Picture コンポーネントはさらに、フォールバック付きで AVIF や WebP を配信します。

あと二つの習慣で仕上がります。最適化したい画像は src に置くこと(public のファイルは加工されずそのまま配信されます)。そしてページ上部のメイン画像は遅延読み込みにせず、Largest Contentful Paint を遅らせないよう即時に読み込むことです。

アイランドアーキテクチャは JavaScript を管理しやすくします。コンポーネントはクライアントディレクティブを付けるまで静的な HTML のままです。client:load はすぐに、client:idle はブラウザが空いたときに、client:visible は表示領域に入ったときにだけハイドレーションします。即座に反応が必要なもの(メニュー、カート)だけに client:load を使うのが、Interaction to Next Paint を守る最も簡単な方法です。サーバーアイランド(server:defer)は、キャッシュ済みのページの後にパーソナライズされたブロックを読み込み、メインコンテンツの表示を遅らせません。

補足

コンポーネントが先にサーバーでレンダリングされている限り、アイランドが遅らせるのはインタラクティブ性だけで、テキストではありません。読み込み後にブラウザで取得するコンテンツは別問題で、JavaScript を実行しないクローラー(多くの AI クローラーを含む)には見えません。

Astro サイトに構造化データを追加するには?

Astro にはスキーマ専用の機能がないため、すべてを自由に制御できます。ページ種別(Article、Product、Organization、BreadcrumbList、FAQPage)ごとに JavaScript オブジェクトを作り、type が application/ld+json の script タグに出力します。JSON がエスケープされないよう、set:html ディレクティブと JSON.stringify を使います。表示中のページと同じ frontmatter やコレクションのデータから生成すれば、マークアップは常にユーザーが見る内容と一致します。これは schema マークアップに関する Google のガイドラインの要件でもあります。

新しいページ種別の JSON を下書きするなら、無料の schema ジェネレーターで有効な雛形を作り、テンプレート化するのが近道です。テンプレートを変更するたびに、ビルド済みページのサンプルを Google のリッチリザルトテストで検証しましょう。

Astro への移行時にリダイレクトをどう扱うか?

WordPress や Next.js からの移行は、Astro サイトにとって最もリスクの高い局面です。トラフィックや被リンクのある URL はすべて維持し、それ以外は最も近い移行先へ一つずつ恒久的なリダイレクトで対応づけます。詳しくは SEO のリダイレクトのガイドをご覧ください。

Astro の設定は、旧パスを新パスに対応づける redirects オブジェクトを受け付けます。アダプターを使えば、これらは本物の HTTP リダイレクトになります。完全に静的なビルドでは、Astro は代わりに meta refresh を含む HTML ページを書き出します。Google はこれをたどりますが、サーバー側の 301 より弱いシグナルとして扱います。静的サイトでは、ホスティングの形式(Netlify や Cloudflare Pages なら _redirects ファイル、Vercel なら vercel.json)でリダイレクトを宣言し、クローラーが本物の 301 を受け取れるようにしてください。

Astro は SEO と GEO にどう役立つか?

ChatGPT、Perplexity、Gemini に引用される第一歩は、読み取れることです。多くの AI クローラーは JavaScript を実行せずに生の HTML を取得します。Astro のデフォルトのように最初のレスポンスで全文を届けるサイトは、クライアントレンダリングのサイトが抱える障壁を取り除けます。そのうえで、明確な見出し、結論から始まる段落、構造化データ、llms.txt ファイルが、各ページを引用しやすくします。

公開後は推測ではなく計測しましょう。Sorank の GEO・SEO ダッシュボードは Search Console のデータと AI アシスタント経由の訪問をまとめて表示し、新しいサイトが順位を維持できているかを確認できます。

Google Search Console のクリック数、表示回数、クリック率、平均掲載順位の推移を表示する Sorank の GEO・SEO ダッシュボード
Sorank ダッシュボードの Search Console パフォーマンス:サイトを Astro に移行した後の数週間で注視すべき推移です。

技術的な品質は、上位表示を狙えるコンテンツがあってこそ成果につながります。Sorank の AI ブログ記事ジェネレーターは Google と AI アシスタント向けに最適化した記事を作成して公開し、Astro プロジェクトのような独自構築のサイトにも webhook で接続できます。

Astro はデフォルトで高速かつクロール可能な HTML を提供しますが、上位表示は追加する head タグ、サイトマップ、hreflang、構造化データ、リダイレクトに左右されます。まず共通の SEO コンポーネントとサイトマップを整え、公開前に上の表を一つずつ確認してください。

よくある質問

Astro には SEO プラグインが組み込まれていますか?

いいえ。Astro には公式のオールインワン SEO プラグインはなく、タイトル、メタディスクリプション、canonical、ソーシャルタグは共通の head コンポーネントに書きます。サイトマップは公式統合 @astrojs/sitemap で対応できます。コミュニティ製のパッケージもありますが、自作の小さなコンポーネントのほうが保守しやすく、すべてを自分で管理できます。

SEO では Astro と Next.js のどちらが優れていますか?

どちらも完全にレンダリングされた HTML を出力できるので、Google はどちらも問題なくインデックスできます。Astro はデフォルトで送る JavaScript がはるかに少なく、コンテンツ中心のサイトは一般に速くなり、Core Web Vitals にも有利です。高度にインタラクティブなアプリには Next.js が向いていますが、ブログ、企業サイト、ドキュメントなら Astro のほうが SEO の面でシンプルです。

サーバーでレンダリングした Astro のページを Google はインデックスできますか?

できます。オンデマンドでレンダリングしたページも、事前レンダリングしたページと同じく完全な HTML を Googlebot に返します。注意すべきは、読み込み速度に影響するサーバーの応答時間と、サーバーモードの動的ルートを手動で追加しない限り一覧に載せないサイトマップ統合の二点です。

無料のSEO・GEO監査

30日分のコンテンツプランを無料で入手

競合、あなたのサイト、AIでの可視性を分析し、あなた専用のコンテンツプランを無料で作成します。

Sorankの無料SEOツール

無料ツールをすべて見る

サイトの無料診断を受ける

先行導入企業のご紹介

野心的な創業者たちからの声

オーガニック成長ソフトウェア

8 か月で顧客 0 人から 5000 人

Thibault BMsorank.com
オーガニック成長レジャーと航空

4か月でクリック数0から1104へ

Dominiqueflight-sensations-idf.com
オーガニック成長EC

5 か月で訪問者 0 人から 1 万人

Celio Fabianomonrobotlavevitre.fr
オーガニック成長インストーラー向けリード生成

2か月でクリック x98

LeadBolt Agencyleadbolt.online
オーガニック成長音楽ソフトウェア

5か月でクリック数55倍

Valentin Cordiertiger-sounds.com