The SEO Tab
What editors see on every page: SERP preview with desktop/mobile surface toggle, language switcher, character counters, canonical URL field, and noindex/nofollow checkboxes.
Finding the SEO tab
On any page whose template has seoneo_tab added, you'll see an SEO tab (with an optional NEO badge) alongside Content, Children, and Settings in the page editor. If the tab isn't showing, go to Setup > Templates, open the template, switch to the Fields tab, and add seoneo_tab.
Google SERP Preview
The top of the SEO tab shows a live Google-style search result card — URL, site name, title, and description rendered exactly as they'll appear in Google's results. The card updates live as you type in the title and description fields below it, so editors get an accurate sense of how the page will look in search before saving.
- Desktop / Mobile toggle — above the preview card, a surface switcher flips between Google's desktop and mobile SERP layouts. Mobile uses a narrower card and shorter title/description budgets (Google truncates earlier on mobile). The character counters below the fields update automatically when you switch.
- Language switcher — on multilingual sites a language selector appears automatically above the preview, with no extra configuration. It lets editors preview any language version of the SERP without switching PW's main language tab. Useful for checking that translated titles fit within budget.
Meta Title
The Meta Title field (seoneo_title) overrides the title used in the <title> tag and og:title. Leave it empty to let SEO NEO fall back through the smart-map chain — typically the page title.
- Desktop: green up to 60 characters, amber 61–70, red above 70. Mobile: green 50, amber 51–60.
- An optional hard-cap in module config enforces browser-level
maxlengthfor teams that want a firm limit rather than advisory counters. - The full formatted title (with separator and site name) is shown in the Google SERP Preview — the field itself only contains the page-specific part.
Meta Description
The Meta Description field (seoneo_description) sets <meta name="description"> and og:description. Leave it empty to let the smart-map fallback provide a value (typically the first 180 characters of summary or body).
- Desktop: green up to 160 characters, amber 161–180, red above 180. Mobile: green 120, amber 121–140.
- All four green/amber thresholds and the two mobile targets are individually tunable in module config.
- Values entered here are returned verbatim with no truncation. Values resolved from the fallback chain are truncated at the configured max length (default 180 characters).
Canonical URL
The Canonical URL field (seoneo_canonical) overrides the auto-generated canonical for this page. Leave it empty in most cases — the auto-canonical correctly handles URL segments and pagination.
Three formats are accepted:
- Absolute URL (
https://example.com/path/) — used verbatim - Protocol-relative (
//example.com/path/) — scheme is added based on the current request - Root-relative path (
/about-us/) — scheme and host are taken from the page's own URL. Useful for staging/production parity.
The input shows the auto-generated canonical as a placeholder, so editors can see what SEO NEO would use if the field is left empty.
Noindex and Nofollow
Two checkboxes at the bottom of the SEO tab control this page's robots directive:
- Noindex — adds
noindexto the robots meta tag. Use for pages you don't want in Google's index: thank-you pages, duplicate content, gated/private content. - Nofollow — adds
nofollow. Tells bots not to follow links on this page.
These always override site-wide auto-defaults. The site-wide kill switches (Site-wide noindex / Site-wide nofollow in module config) win over everything — see Robots & Indexing.
Custom HTML
The optional Custom HTML field (seoneo_custom) lets you inject arbitrary markup into this page's <head>. The field is plain text and its contents are dropped verbatim into the SEO NEO meta block — no escaping, no validation. Use it for:
- One-off
<link rel="preload">hints for hero images on landing pages. - Page-specific
<meta>tags that don't deserve a dedicated module setting (one-off fact-check tags, a customtheme-colorfor a campaign page). - Inline JSON-LD blocks for niche schema types not yet covered by SEO NEO's built-in graph.
- Pixel snippets or single-page analytics overrides.
Anything you put here is rendered as-is, so test in the page source after saving. See Custom Meta Tags for when to use this field vs global mappings.
Google SERP Preview field
If you ever inspect the template's field list you'll notice seoneo_preview alongside the other SEO NEO fields. This is a display-only widget — it has no value of its own and stores nothing in the database. It's the renderer that draws the live Google SERP Preview card at the top of the SEO tab.
Adding the SEO tab to more templates
The SEO tab is a field group — adding seoneo_tab to a template brings in the full group. You can add it to as many templates as you like. Typical targets:
- Content templates: blog posts, product pages, landing pages, event pages
- Section index pages:
/blog/,/products/ - The homepage
Templates that typically don't need the SEO tab: admin pages, webhook endpoints, user account pages (those should have seoneo_noindex auto-applied via module config instead).
See also
- Quickstart ⭐ — how to add
seoneo_tabto a template for the first time. - Configuration — character counter budgets, hard-cap setting, and auto-noindex defaults.
- Robots & Indexing — site-wide noindex defaults and granular Google directives.
Last updated