What is the meta description?
The short block of text Google shows below the title in the search results. It doesn't directly influence rankings but heavily affects click-through rate (CTR). Higher CTR → better positions over time.
The most important rules
- Length: 120–160 characters. Beyond that Google truncates.
- Focus keyword mentioned once, naturally — Google bolds it in the result.
- Active voice, with clear value for the reader. No filler.
- Call to action when appropriate ("Compare now", "Get it done in 5 minutes").
- Unique per page. Never reuse the same description on two URLs.
Example: good vs. bad
Bad: "Welcome to our site. We offer WordPress SEO. Learn more."
Good: "WordPress SEO without plugin clutter: SignalWP tells you weekly what changed in your rankings — and what's next."
Set it in Yoast SEO
- Open the post, scroll to the Yoast SEO box.
- Click Edit snippet.
- Enter your text in the Meta description field.
- The preview shows live how Google will render it.
Set it in RankMath
- Open the post, expand the RankMath panel on the right.
- Click Edit Snippet.
- Enter your text in the Description field.
- The score on the right shows optimisation suggestions — useful, not gospel.
Set it in AIOSEO
- Open the post, scroll to the AIOSEO Settings box.
- Open the General tab.
- Enter your text in the Meta Description field.
Without an SEO plugin (in code)
Possible, but only sensible if you actively maintain your theme. In your child theme's functions.php:
add_action('wp_head', function () {
if (is_singular()) {
$desc = get_post_meta(get_the_ID(), '_meta_description', true);
if ($desc) {
echo '<meta name="description" content="' . esc_attr($desc) . '">';
}
}
});Then you also need a custom field _meta_description per post. For most workflows: not worth the effort, use a plugin.
Common mistakes
- Leaving it empty. Google auto-generates one — usually the first words of the post. Rarely good.
- Description as a keyword dump. Reads terribly, kills CTR.
- Identical description across many pages. Google then ignores it entirely.
- Special characters / emojis without purpose. Can truncate the snippet.