SEOmatic
Full Guide
Everything you need to automate SEO for WordPress and Shopify sites — from first connection to publishing AI-generated content and delivering branded client reports.
SEOmatic is a full-stack SEO automation platform. Connect your website, choose which SEO tasks to run, and let AI generate optimised meta tags, schema markup, keywords, internal link suggestions, and full blog posts — then push everything live to your site automatically.
5-Step Quick Start
-
1Configure Agency Settings (Super Admin)Go to Admin → Agency Settings. Add your Anthropic API key (get one at console.anthropic.com) — this powers all AI features. Configure your SMTP email settings so you can receive OTP codes and send client reports.
-
2Connect Your First SiteGo to Sites and click + Add Site. Choose WordPress or Shopify. For WordPress, you'll need a WP Application Password. For Shopify, you'll need a Custom App access token. Full details are in the Connecting a Site section below.
-
3Select Your SEO TasksTick which tasks to enable for the site: Meta Tags, Schema Markup, Keyword Optimisation, Internal Links. Start with Meta Tags only to see results quickly — you can add more tasks later.
-
4Run Your First SEO JobOn the site card, click ▶ Run SEO. The system fetches all published pages and sends each one to AI. A 30-page site takes roughly 3–5 minutes. Watch the progress in the run log at the bottom of the page.
-
5Review & Approve ResultsWhen the run finishes, click any page row to review its AI-generated meta title, description, and schema. Click Approve to push it live to your site. Click Approve All to write everything in one action.
The Three User Roles
| Capability | Super Admin | SEO Specialist | SEO Staff |
|---|---|---|---|
| Add/delete sites | ✓ | ✓ | — |
| Run SEO tasks | ✓ | ✓ | Assigned sites only |
| Approve SEO results | ✓ | ✓ | — |
| Create/assign blog posts | ✓ | ✓ | — |
| Write/edit blog posts | ✓ | ✓ | Assigned posts only |
| Approve & publish posts | ✓ | ✓ | — |
| Manage clients & reports | ✓ | ✓ | — |
| Invite & manage users | ✓ | View & edit only | — |
| Agency settings, billing | ✓ | — | — |
| Audit log, AI cost tracking | ✓ | — | — |
SEOmatic supports two platforms. Click + Add Site in the Sites panel and choose your platform using the toggle at the top of the modal.
- Fetches all published pages and posts via the WP REST API
- Writes back meta via RankMath custom fields
- Publishes blog posts directly to WP with media upload
- Verifies RankMath plugin is active before running
- Requires: site URL + WP Application Password
- Fetches pages, products, and blog articles
- Writes SEO back via Shopify global metafields (
title_tag/description_tag) - Publishes blog posts as Shopify Articles
- Auto-creates a "News" blog if none exists
- Requires: store domain + Admin API access token
WordPress Setup
-
1Generate a WP Application PasswordLog into your WordPress Admin. Go to Users → Profile. Scroll down to the Application Passwords section. Type a label (e.g.
SEOmatic) and click Add New Application Password. Copy the password exactly as shown — it includes spaces and is only displayed once. -
2Install the RankMath Plugin (recommended)SEOmatic writes meta data via RankMath's custom fields (
rank_math_title,rank_math_description,rank_math_focus_keyword). Install and activate RankMath SEO or RankMath SEO Pro on your WordPress site. Without it, SEO data won't appear in Google's results pages. -
3Fill in the Add Site FormEnter the Site Name (display label), the full WordPress URL (no trailing slash), your WP Username, and the Application Password. Select which SEO Tasks to enable. Set the schedule if you want auto-runs.
-
4Test the ConnectionClick ⚡ Test Connection inside the modal. A green banner confirms your credentials work. A red banner explains what went wrong. Common issues: wrong URL format, wrong username, Application Password not copied completely.
Shopify Setup
-
1Create a Shopify Custom AppIn your Shopify Admin, go to Settings → Apps and Sales Channels → Develop Apps. Click Create an App, give it a name (e.g.
SEOmatic), and click Create. -
2Configure API ScopesIn the app settings, go to Configuration → Admin API integration. Enable these scopes:
read_content,write_content,read_products,write_products,read_metaobjects,write_metaobjects. Click Save. -
3Install and Copy the Access TokenClick Install App then click Reveal Token Once. Copy the Admin API access token — it starts with
shpat_. Store it somewhere safe; it won't be shown again. -
4Add the Site in SEOmaticToggle the platform selector to Shopify. Enter your store domain (e.g.
mystore.myshopify.com) and paste the access token. Click Test Connection to verify, then Save.
global.title_tag and global.description_tag metafields, which is the standard Shopify approach for SEO titles and descriptions. Most Shopify themes (Dawn, Debut, and others) read these fields automatically.SEO Task Checkboxes Explained
Starting a Run
On any site card, click ▶ Run SEO. To process all sites at once (Admin/Specialist only), click Run All Sites in the top right. Only one run can be active per site at a time — the button shows a spinner while a job is in progress.
What the AI Generates
For each published page, AI produces:
- ● SEO meta title (50–60 characters)
- ● Meta description (150–160 characters)
- ● Schema markup JSON-LD
- ● Primary focus keyword
- ● 5–8 secondary keywords
- ● Internal link suggestions
Require Approval Mode
Reviewing and Editing Results
Click any page row to open the full result view. You can edit the meta title, description, schema, and keywords directly before approving. Edited values override the AI output and are saved permanently. Click Approve to push the result live, or Reject to discard it and regenerate later.
Automated Weekly Runs
Enable Weekly Auto-Run in Agency Settings to automatically process all sites on a set day and time each week. Combined with Require Approval OFF, this creates a fully hands-free SEO optimisation pipeline. The scheduler uses the server's cron job — it runs even when no one is logged in.
The SEO Audit module takes your keyword and ranking data from any major SEO tool and produces a structured, day-by-day action plan for the week ahead. It also automatically creates draft blog posts from the keyword opportunities it finds.
Supported Data Sources
- 1Export Your Keyword DataExport a Keywords or Rankings report as CSV from your SEO tool. Include at least 50 keywords with search volume and difficulty for meaningful analysis. More data = better action plan.
- 2Click + Upload AuditSelect the Source Platform from the dropdown (critical — each tool uses different column names). Select the target site, then upload your CSV file. The system normalises all column formats automatically.
- 3Click Analyse with AIAI processes all keyword data — volume, difficulty, current rankings, content gaps — and generates: opportunities ranked by traffic impact, content gaps, technical priorities, and blog post topics. Takes 30–90 seconds.
- 4Work Through the Weekly Action PlanThe analysis produces a Monday–Friday plan. Each day has 2–4 specific tasks. Click any day to expand detailed instructions. Start with Monday — highest-impact items are always listed first.
Internal links are one of the most underrated SEO tactics. They distribute page authority across your site and help Google discover and index all your content. Pages with zero internal links pointing to them (orphans) are nearly invisible to search engines.
The Three Views
How to Run a Link Audit
- 1Go to Internal Links in the sidebar. Select the target site from the dropdown.
- 2Click Run Link Audit. The system fetches all published posts and maps every internal link between them. Takes 1–3 minutes for most sites.
- 3Click Get Suggestions. AI reads all your post content and identifies the most relevant linking opportunities, ranked by SEO impact.
- 4Click Apply on any suggestion. The link is inserted into the source post's content in WordPress automatically. The suggestion updates to "Applied ✓".
Backlinks from other websites are one of Google's strongest ranking signals. This module lets you track all your inbound links, verify they're still live, bulk import from any SEO tool, and include them in client reports.
Adding Backlinks
Manually (one at a time)
Click + Add Backlink and fill in:
- Source URL — the external page linking to you
- Target URL — your page being linked
- Anchor Text — the clickable link text
- DA Score — Domain Authority (check via Moz/Ahrefs)
- Status — Active / Pending / Lost
Bulk CSV Import
Click ⬆ Import CSV. Required columns:
target_url
anchor_text
domain_authority
status
Duplicate entries are automatically skipped. Export from Ahrefs, SEMrush, or your outreach tracker.
Verifying Backlinks
Click Verify on any row. The server fetches the live source page and scans for a link to your domain. Status updates to Active (found) or Lost (not found). Run verifications weekly — catching a removed link quickly lets you follow up with the site owner before it's too late.
Exporting
Click ⬇ Export to download a CSV. Filter by site, status, or DA score range before exporting. The export feeds directly into client reports and your own tracking spreadsheets.
The Media Performance module automatically processes every image uploaded through the blog post editor. Images are converted to WebP, resized to sensible dimensions, EXIF metadata stripped, and the byte savings tracked. Faster images = better Core Web Vitals = better Google rankings.
Every blog post follows a structured 6-stage editorial pipeline. Each transition triggers in-app notifications to the relevant team members and is logged in the Audit Log for accountability.
The 6-Stage Pipeline
Creating a Post
- 1Click + New Post in the Blog Posts panel. Fill in: Title, Primary Keyword, Secondary Keywords (comma-separated), Target Site, Content Tone, Target Word Count, Category, and SEO Slug.
- 2Click Generate with AI for a full AI-written post — or write manually in the editor. The AI uses the primary keyword as its central topic and writes an SEO-structured article with H2 headings and natural keyword placement.
- 3Assign the post to an SEO Staff member, or keep it as your own draft to edit and publish yourself.
Assigning to Staff
Click Assign on any Draft post. Select the writer from the dropdown, add optional briefing notes (e.g. "Use these stats: …"), and click Assign. The staff member receives an immediate in-app notification and sees the post in their queue.
Staff: Working on a Post
- 1Click the post title to open the editor. Click Mark as Under Review — this signals you've started work.
- 2Write or edit content in the Visual editor. Upload images using the image uploader in the right sidebar. Fill in the meta title and description fields.
- 3Click Submit for Approval when done. Your manager receives a notification immediately.
Approving & Scheduling
Posts in Pending Approval show an ✅ Approve & Schedule button. Click it, review the content, set a publish date (leave blank to publish immediately), add optional approval notes, and click Confirm Approval. The post moves to Scheduled status.
Auto-Publishing
The hourly auto-publish scheduler checks for Scheduled posts whose publish date has passed and pushes them live automatically — to WordPress or Shopify depending on the target site's platform. You don't need to be logged in for this to work.
global.title_tag metafield so Shopify themes pick it up correctly.[IMAGE: hero image showing SEO dashboard | alt text]
More content continues below…
Editor Tabs
Image Placeholders
The AI uses a special syntax for images it recommends including:
Upload a real image in the right sidebar's image uploader. When you publish to WordPress, the platform uploads images to the WP Media Library and automatically replaces [IMAGE: …] placeholders with proper <img> HTML tags with the alt text. The first image uploaded becomes the featured image.
AI Generation Settings
| Setting | Options | Effect |
|---|---|---|
| Tone | Professional, Casual, Technical, Friendly | Sets the writing style — Technical is best for B2B/SaaS, Casual for lifestyle brands |
| Word Count | 500 – 3,000 | Longer posts tend to rank better for competitive keywords but take more AI tokens |
| Category | Matches WP/Shopify categories | Sets the post category automatically on publish |
| Slug | Auto-generated from title | The URL path for the post — edit before publishing to optimise for your primary keyword |
Each Client record stores the information needed to generate personalised, branded PDF reports and deliver them by email. A client typically maps to one or more Sites you're managing on their behalf.
Adding a Client
- 1Click + Add Client in the Clients panel. Enter the Company Name — this appears as the report heading.
- 2Add the Primary Contact Name and one or more Email Addresses (comma-separated). Reports are delivered to all addresses listed.
- 3Set the Report Frequency: Monthly, Weekly, or Quarterly. The auto-generation scheduler uses this to know how often to generate reports automatically.
- 4Upload a Logo (transparent PNG looks best) and pick a Brand Color. These are used to theme the PDF report header to match the client's identity.
Reports are generated server-side as multi-section PDFs using your real SEO data for the selected period. An AI executive summary is included in every report — written in professional language that clients appreciate.
Generating a Report
- 1Go to Reports → + Generate Report. Select a Client from the dropdown.
- 2Set the Report Period — start and end date. The report pulls all SEO activity within this date range.
- 3Choose a Template:
• Full — all data + AI executive summary (8–12 pages)
• Summary — condensed KPI overview (4 pages)
• Backlinks Only — detailed link profile report - 4Click Generate. The PDF is ready in 15–30 seconds. Click ⬇ Download to save it, or 📧 Send to email it directly to the client.
What's Included in a Full Report
Adding a User
- 1Go to Admin → Users. Click + Add User.
- 2Enter: Username (letters, numbers, underscores), Email Address, Temporary Password, and Role.
- 3Click Save. An invitation email is sent immediately with their credentials. The user row shows an Invited badge until they log in and complete onboarding.
- 4For SEO Staff users, click Assign Sites on their row to control which sites they can access and run.
Role Comparison
User Actions
| Action | What it does |
|---|---|
| Edit | Update username, email, or role. Changes take effect at the user's next request — no re-login needed. |
| Resend Invite | Re-sends the invitation email. Use when a user hasn't logged in and the invite email was missed. |
| Deactivate | Immediately revokes login access. The user's data, posts, and history are preserved. Click Activate to restore access. |
| Delete | Permanently removes the user and all their data. Requires 3-step confirmation: type username + your password + OTP. Cannot be undone. |
| Assign Sites | SEO Staff only — sets which sites the staff member can access. |
AI Settings (Critical)
Go to Admin → Agency Settings → AI Settings. Paste your Anthropic API key here. Get one at console.anthropic.com. This key powers every AI feature: meta tags, blog posts, SEO audits, internal link suggestions, and report summaries. Without a valid key, all AI features return an error.
SMTP Email Setup
Configure SMTP to enable: invitation emails to new users, OTP codes for secure deletion, and client report delivery.
| Provider | Host | Port | Notes |
|---|---|---|---|
| Gmail | smtp.gmail.com | 587 | Use an App Password — not your regular Gmail password. Enable 2FA first. |
| Outlook / Office 365 | smtp.office365.com | 587 | Use your full email address as the username. |
| SendGrid | smtp.sendgrid.net | 587 | Username is always apikey; password is your SendGrid API key. |
| Mailgun | smtp.mailgun.org | 587 | Use SMTP credentials from Mailgun dashboard → Sending → Domain Settings. |
After saving, click Test Email to send a verification email to the agency contact address. Confirm it arrives before using report delivery.
Agency Branding
Set your Agency Name, Logo (transparent PNG, recommended 300×80px), Website URL, Contact Email, and Brand Color. These appear in the header and footer of every PDF report you generate. Update these before generating your first client report.
Automation Schedules
AI Cost Monitoring
The dashboard's AI Cost stat card shows your total Anthropic API spend for the current calendar month. Click it (or go to Agency Settings → AI Usage) to see a breakdown by action type: meta generation, blog writing, audit analysis, link suggestions, report summaries. Use this to stay within your Anthropic API budget and identify which features cost the most.
Security Architecture
3-Layer Deletion Protection
Deleting a user, site, or critical record triggers a 3-step confirmation to prevent accidental or malicious data loss:
- 1Type the exact name of the item being deleted (e.g. the username). This confirms you know what you're deleting.
- 2Enter your own password. Confirms you are the authenticated Super Admin initiating the deletion.
- 3Enter the OTP code sent to the agency contact email. Prevents bulk accidental deletions and adds a second-factor check.
Audit Log
Go to Admin → Audit Log. Every significant platform action is recorded:
| Event type | What's logged |
|---|---|
| Login / Logout | Timestamp, username, IP address, success or failure reason |
| Site changes | Created, edited, deleted — who did it and what changed |
| SEO runs | Started/completed, site name, pages processed, AI cost |
| Blog post workflow | Every status transition: assigned, submitted, approved, rejected, published |
| User management | Created, role changed, deactivated, deleted |
| Report delivery | Client, period, template, delivery status, timestamp |
| Agency settings | API key changes, SMTP updates, branding changes |
Go to Billing in the sidebar (or click Manage billing in your profile menu). Billing is handled securely via Stripe — your card details are never stored on this server.
Subscription Plans
Managing Your Subscription
In the Billing panel you can:
- ●Upgrade or downgrade your plan — changes take effect immediately, prorated to the billing cycle
- ●Add team seats if you need more user accounts than your current plan allows
- ●View invoices — download PDF invoices for accounting/expense purposes
- ●Cancel — your account stays active until the end of the current billing period
Navigation
Blog Post Editor
[IMAGE: ...] placeholders are only replaced with real image tags if actual images have been attached to those slots.