メタディスクリプションとは?書き方と設定方法
メタディスクリプションの役割と、検索結果のCTRへの影響、HTMLと主要CMSでの設定方法を、テンプレートと例つきで解説します。
メタディスクリプションとは何か、なぜ必要か
メタディスクリプションは、ページの<head>内に置くHTMLタグです。content属性にページの短い説明を入れます。通常は1~2文、150~160文字ほどです。ユーザーは検索結果で、青いタイトルリンクの下にこの文章を目にします。この文章のブロックがスニペットです。
ディスクリプションの主な役割は、検索したユーザーにページの内容を正確に伝えることです。修正後はインプレッション、クリック数、検索クエリの傾向を比較してください。ただし、CTRが一定の割合で上がるとは限りません。Googleが指定したテキストをそのまま使うとも限りません。
メタディスクリプションの要点
文脈が重要
クエリによりよく合う場合、Googleはページ本文からスニペットを作ることがあります。
検索する人のために書く
ページの目的と、事実に基づく強みを自然な文章で示します。
途切れを避ける
実際の表示をプレビューで確認します。文字数だけで表示が保証されるわけではありません。
同じ条件で比べる
クリック数の変化を判断するには、期間とクエリのグループをそろえます。
このタグは、HTML文書の<head>内に置く必要があります。クローラーはインデックス登録の際、そこからディスクリプションを読み取ります。タグがない場合や空の場合、Googleはページ本文からスニペットを自動で作ります。多くは最初の段落か、ユーザーの検索クエリを含む部分です。
<head>
<meta charset="UTF-8">
<title>Buy Winter Workwear Wholesale — SpecOpt</title>
<meta name="description" content="Winter workwear wholesale from the manufacturer: suits, overalls, gloves. Delivery across Russia. Prices from $12, bulk discounts from 50 units.">
</head>ディスクリプションの意味とスニペットでの役割
「description」は、ものごとの簡単な説明を意味します。HTMLの「meta description」は、ページの内容を外部のシステムに伝える短い要約です。外部のシステムとは、検索クローラー、SNS、メッセンジャーアプリなどです。TelegramやLinkedInでページを共有すると、ディスクリプションがリンクプレビューの文章になるのが一般的です。
検索結果では、ディスクリプションがスニペットの下段、つまり青いタイトルリンクの下の文章になります。ユーザーはここでクリックするかどうかを決めます。よいディスクリプションは「このページに何があるのか」に答え、訪れる具体的な理由を示します。たとえば価格、納期、ここでしか読めない内容、検索クエリへの直接の答えです。
Googleは約70%のケースでディスクリプションを書き換えます。ページ本文から取り出したスニペットのほうが特定のクエリに合うとアルゴリズムが判断したときです。ディスクリプションがターゲットキーワードとページの実際の内容を反映しているほど、Googleが独自の文章を作らず、指定したテキストを使う可能性が高まります。
メタディスクリプションの設定方法:構文と最適な長さ
タグの構文は単純で、HTMLの初期から変わっていません。<meta>タグは自己終了タグで、閉じタグは不要です。必ず<head>内に置きます。必須の属性は2つです。name="description"がタグの種類を示し、contentに説明文を入れます。
<!-- Basic syntax -->
<meta name="description" content="Page description text, 150–160 characters long.">
<!-- Full document structure -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Page Title — Brand</title>
<meta name="description" content="Short description of the page for search results.">
</head>
<body>...</body>
</html>デスクトップでの最適な長さは150~160文字です。モバイル検索でGoogleが表示するのは約120文字です。トラフィックの大半がモバイルなら、120~130文字を目安にします。それより長い文章は、インデックスには登録されますが、スニペットでは途中で切れます。ユーザーにはCTAの代わりに省略記号が見えることになります。
| ディスクリプションの長さ | 検索結果での表示 | 使いどころ |
|---|---|---|
| 70文字未満 | 全文が表示されるが、ユーザーに伝わる情報が少なすぎる | 単純なページのみ(404ページ、ユーティリティページ) |
| 120~130文字 | モバイルでは全文が表示され、デスクトップでは少し切れる | モバイルファーストのユーザー層 |
| 150~160文字 | デスクトップに最適で、モバイルでは少し切れる | ほとんどのページ:トップページ、カテゴリ、ブログ |
| 160文字超 | どちらの形式でも省略記号で切れる | 非推奨:重要な文章が失われる |
contentが空。<meta name="description" content="">は、タグがない状態より悪い扱いです。クローラーは技術的な不備として記録し、結局ページ本文からスニペットを作ります。- ディスクリプションの重複。同じ文章が何十ページにもあると、コンテンツの質が低いというシグナルになります。Screaming Frogの「Meta Description」→「Duplicate」で見つかります。
content内のHTMLタグ。content="<b>Buy</b> workwear"は無効です。content属性に入れられるのはプレーンテキストだけで、マークアップは使えません。- エスケープされていない引用符。
content="Buy "winter" suits"はHTMLを壊します。値の中ではシングルクォートか、"エンティティを使います。
[商品名] — [価格]で購入。[ストアの強み]。配送[条件]。のような形です。簡単なテンプレートでも、重複やタグの欠落よりはずっとよい結果になります。動的に生成されるページでは、ディスクリプションをCMSのテンプレートやサーバーサイドのコードでプログラムから作ります。基本原則は、すべてのページに、内容を正確に反映した固有のディスクリプションを持たせることです。
<?php
// Description template for a product page (PHP / E-commerce)
$description = sprintf(
'%s — buy for %s. %s. Delivery across the US from %d days.',
$product->name,
'$' . number_format($product->price, 2),
$product->short_benefit,
$product->delivery_days
);
// Trim to 160 characters without breaking a word
$description = mb_strimwidth($description, 0, 157, '...', 'UTF-8');
?>
<meta name="description" content="<?= htmlspecialchars($description) ?>">ページの種類別のディスクリプションの書き方
よいディスクリプションの構成は、ページの種類とユーザーの意図で変わります。トップページは、事業全体を説明します。カテゴリページは、品ぞろえとメリットを伝えます。商品ページは、個別の商品について、価格と強みを中心に書きます。ブログ記事は、読者が何を学べるかを伝えます。どの場合も原則は2つで、具体性とCTAです。
| ページの種類 | ディスクリプションの型 | 例 |
|---|---|---|
| トップページ | [何をしているか]を[誰に]向けて。[主なメリット]。[CTA]。 | 産業向けの防炎作業服を製造しています。自社工場で生産し、ISO規格の認証を取得。カタログをご請求ください。 |
| カテゴリ | [品ぞろえ・点数]。[価格は○○から]。[条件:配送、支払い]。[CTA]。 | 溶接工向けの冬用作業服:120以上のモデルを12ドルから。全米へ1~3日で配送。50着から大口割引。 |
| 商品ページ | [商品名]。[特長・強み]。[価格]。[配送・保証]。 | TK-1防炎溶接スーツ — ISO 11612認証取得。価格48ドル。ニューヨーク市内は当日配送、全米は3日。 |
| ブログ記事 | [記事で扱う内容]。[読者が学べること]。[事実や具体的な情報]。 | HTMLとCMSでのメタディスクリプションの設定方法:構文、最適な長さ、ページ種類別のテンプレート、よくあるミス。 |
| サービスページ | [対象者]向けの[サービス]:[得られるもの]。[期間]。[CTA]。 | ECサイト向けのテクニカルSEO監査:インデックス登録、表示速度、サイト構造。5営業日で完全なレポートを提出。見積もりをご依頼ください。 |
| お問い合わせページ | [連絡方法]。[営業時間]。[CTA]。 | SEO会社へのご連絡は、電話、メール、Telegramで。月~金の9時~18時。1営業日以内に返信します。 |
検索する人が期待する言葉は、ページの内容に合っているなら使います。検索エンジンがクエリの語句を強調表示することはありますが、書式は検索エンジンが決める表示の都合です。クリック率の向上を約束するものではなく、わかりやすさを基準に書いてください。
ディスクリプションのCTAは、釣りの見出しではなく、役に立つシグナルです。「学ぶ」「読む」「価格を比較」「配送つきで注文」といった言葉は、クリックした後に何が起こるかをユーザーに正確に伝えます。調査では、CTAを含むディスクリプションは、そうでないものよりCTRが10~15%高くなっています。
CMSでディスクリプションを設定する方法:WordPress、Bitrix、Tilda
最近のCMSの多くは、管理画面かSEOプラグインでディスクリプションを管理できます。コードを直接編集するのは、独自開発のサイトやプラグインを使わない構成だけです。ここでは、よく使われる3つのプラットフォームを取り上げます。
WordPress:Yoast SEOとRank Math
WordPressでは、Yoast SEOかRank Mathを使うのが最も簡単です。どちらも無料で、テンプレートに対応しています。Yoast SEOの場合は、投稿エディターの「Yoast SEO」タブ →「Google Preview」→「Edit snippet」→「Meta description」欄の順に開きます。プラグインが文字数カウンターを表示し、エラーも指摘します。Rank Mathの場合は、「Rank Math」タブ →「Meta」セクション →「Description」です。どちらも%title%、%category%、%excerpt%といった変数が使えます。投稿タイプ単位のテンプレートに便利です。
<?php
// functions.php — manual meta description without a plugin
// Use only if you are NOT using Yoast SEO / Rank Math
add_action('wp_head', function() {
if (is_single() || is_page()) {
$description = get_the_excerpt();
if (empty($description)) {
$description = mb_strimwidth(
strip_tags(get_the_content()),
0, 157, '...', 'UTF-8'
);
}
echo '<meta name="description" content="'
. esc_attr($description) . '">' . "\n";
}
}, 1);<head>内でタグが重複します。クローラーはこれを技術的なエラーとして指摘します。プラグインはどちらか1つにします。Bitrix
1C-Bitrixでは、ページまたはコンポーネントのプロパティでディスクリプションを設定します。管理画面では、「Content」→ セクションまたはページを選択 →「SEO」タブ →「Description (meta description)」欄です。コンポーネントテンプレートで自動生成する場合は、SetPagePropertyメソッドを使います。値がサイトのheader.phpに渡され、そこでタグが<head>に出力されます。
<?php
// catalog.element template.php — auto-generate description
if (!empty($arResult['NAME']) && !empty($arResult['PREVIEW_TEXT'])) {
$description = $arResult['NAME']
. ' — ' . strip_tags($arResult['PREVIEW_TEXT']);
$description = mb_strimwidth($description, 0, 157, '...', 'UTF-8');
$APPLICATION->SetPageProperty('description', $description);
}
// site header.php — output the tag
$metaDesc = $APPLICATION->GetPageProperty('description');
if ($metaDesc): ?>
<meta name="description" content="<?= htmlspecialchars($metaDesc) ?>">
<?php endif; ?>Tilda
Tildaでは、ディスクリプションを2か所で設定します。サイト全体の設定は、「Site Settings」→「SEO」→「Description」欄です。ページ単位の設定は、ページを開いて「Page Settings」(歯車アイコン)→「SEO」タブ →「Description」欄です。ページ単位の設定は、サイト全体の設定より優先されます。タグは自動で<head>に挿入されるため、コードの編集は不要です。ベストプラクティスは、サイト共通の初期値に頼らず、重要なページごとにディスクリプションを入力することです。
よくあるミスと、サイト全体でのディスクリプション監査
サイト監査では、ディスクリプションの同じ問題が繰り返し見つかります。多くはクローラーで簡単に見つかり、ページごとの手作業ではなく、テンプレートで一括して修正できます。
- サイト全体でディスクリプションが重複している。何十ページも同じ文章になっているのは、CMSがサイト名やキャッチコピーを初期値として挿入するためです。Screaming Frogの「Meta Description」→「Duplicate」で見つかります。対処:ページごとに固有の文章にします。それが難しければ、ページの種類ごとに固有のテンプレートを用意します。
- ディスクリプションがない。タグがないページでは、Googleが本文からスニペットを生成します。選ばれる部分が不適切なことも少なくありません。Screaming Frogの「Meta Description」→「Missing」で見つかります。対処:優先ページは手書きし、残りはテンプレートで対応します。
- ディスクリプションが長すぎる。検索結果で文の途中で切れ、ユーザーにはCTAの代わりに「...」が見えます。上限は150~160文字です。SEMrush Site Auditの「Meta description too long」で確認します。
- ディスクリプションが短すぎる。 70文字未満では、クリックを判断する情報が足りません。Googleが自動生成の文章に差し替えることも多くなります。
- ディスクリプションがページの内容と合っていない。タイトルとディスクリプションとページで、言っていることが食い違っています。この不一致は直帰率の高さにつながります。ユーザーはクリックしてもすぐに離脱します。
- ターゲットキーワードがディスクリプションにない。スニペットで太字にならず、視覚的な手がかりを逃しています。Googleはユーザーのクエリに一致する語を太字にします。この仕組みを活かします。
content内にHTMLタグがないか。7) content属性が空でないか。すべて満たしていれば、ディスクリプションは最適化されています。FAQ
監査やコンサルティングでよく聞かれる、メタディスクリプションの質問に答えます。
メタディスクリプションはGoogleの検索順位に影響しますか?
Googleが指定したディスクリプションではなく別の文章を表示するのはなぜですか?
サイトのすべてのページにディスクリプションは必要ですか?
ディスクリプションの最適な文字数はどれくらいですか?
サイト全体のディスクリプションを監査するには、どうすればよいですか?
Check it with SpiderHead
Free and local: run the audit on your own machine.




