Fix HubSpot CMS SEO from Claude
Claude SEO on your real Search Console data, with fixes you approve in the same chat.

Each local area page used to take us half a day to create and optimize.
With SEOmatic, we can create hundreds of pages in the same time, which helps our clients make the best use of their budget.
It's transformed how we deliver scalable SEO solutions.
Will Hawkins
Marketing Director, Digi-Business UK
Agents read your Search Console data, do the work, and prove what actually moved. You decide what ships.
14-Day Trial for $1, credited to your first payment.
Codex reads your real Google Search Console data through SEOmatic, finds what is holding your HubSpot CMS blog posts and site pages back, stages the fix, and tells you whether it worked. In Approval mode nothing goes live on HubSpot CMS until you approve it.

November 2026
codex mcp add with the SEOmatic URL signs you in through the browser; codex mcp login signs you in again if needed. Skills install with npx skills add.
Free to connect and to read your Search Console. Staged fixes are part of paid plans, with a 14-Day Trial for $1, credited to your first payment. See pricing.
Your HubSpot CMS content lives in HubSpot CMS, not in a repo, so Codex cannot change it with a file edit. Through SEOmatic it reads your Search Console, picks the blog posts and site pages losing clicks and stages the change, which SEOmatic writes through the HubSpot connection once you approve. If you keep theme or template code in a repo, Codex can still fix that part directly.
You: Check /blog/water-softener-cost in Search Console and fix its title.
Codex: From Sep 13 to Oct 10 (28 days), /blog/water-softener-cost had 2,870 impressions and 24 clicks at position 8.9 for "water softener cost". That is a low click rate for page one, so the title is the first thing to test: it reads "Water Softeners". I staged a new title, "Water Softener Cost: Install and Running Prices", to be written to the post's page title in HubSpot. Approve it here or in SEOmatic and it goes live on HubSpot CMS.
An example on a demo site; your numbers come from your own Search Console.
In SEOmatic, go to Connections, select HubSpot and click Connect with HubSpot. Approve access on HubSpot's own consent page. SEOmatic loads your blogs and selects one for you if you only have one. (Already have a private app with the content scope? You can paste its token instead. HubSpot is switching off the creation of new legacy private apps.) The full walkthrough, with every screen, is on the HubSpot CMS integration page.
Run these two commands in your terminal. The first one adds SEOmatic and opens your browser: sign in to SEOmatic and pick your site. The second one signs you in if no browser opened. The CLI, the IDE extension and Codex in the ChatGPT desktop app share the same config (~/.codex/config.toml), so this covers all three. Then start a new Codex session.
codex mcp add seomatic --url https://app.seomatic.ai/api/mcp
codex mcp login seomaticOther ways to connect are on the Codex page.
Paste any of these into Codex. It answers from your data and stages the fix; you approve it before it reaches HubSpot CMS.
More that work well in Codex:
After you approve, SEOmatic writes the change through the HubSpot connection and checks that it is live. Then it measures the result against the page's own baseline and your site's trend: 14 days after a title change, 28 after a content refresh, 90 after a new page. Each change is marked verified, ineffective or regressed, and a low-risk change that loses traffic is rolled back on its own. Ask Codex "Did my HubSpot CMS title changes work?" and it answers from those verdicts.
Full blog posts with titles, HTML content, excerpts, featured images, tags and author, plus rewrites of what is already live.
On a landing or site page with unpublished edits from your team, the agent leaves the page alone rather than publishing their draft along with its change.
The agent arrives switched off. Once on, it ships undoable fixes by itself and waits for you on anything larger, unless you choose Approval mode, where every change waits.
Agents work through HubSpot's own content API. In Approval mode nothing is written until you approve it; in Assisted, the default, changes that can be undone ship on their own. Edits to a blog post update the live post directly; on landing and site pages the change goes through the page's draft and is pushed live, and a page with unpublished edits from your team is left alone.
Every field, limit and safeguard is on the HubSpot CMS integration page.
HubSpot CMS
A HubSpot account with Content Hub (formerly CMS Hub) and permission to approve apps for it. Connecting happens on HubSpot's own consent page; an existing private app with the content scope also works.
Codex
Codex (the CLI, the IDE extension, or Codex inside the ChatGPT desktop app) signed in with your ChatGPT account, and a free SEOmatic account. No API key needed for the browser sign-in.
Codex works the same way on WordPress, Webflow, Shopify, Ghost, Blogger, Wix, Squarespace, Framer, Drupal, BigCommerce, Contentful, Strapi, Sanity, Next.js, Lovable, GitHub, Craft CMS.
Can Codex fix SEO on my HubSpot CMS site?
Yes, through SEOmatic. Codex reads your Search Console data, finds the blog posts and site pages losing clicks and stages the fix, which SEOmatic writes to HubSpot CMS once you approve. The three setup steps are on this page.
What can Codex change on HubSpot CMS?
SEOmatic works on your blog posts and site pages through the HubSpot connection: titles, descriptions and content first, and more where HubSpot CMS allows it. Every field and limit is listed on the HubSpot CMS integration page.
How do I know if a HubSpot CMS fix worked?
SEOmatic measures every change it ships against the page's own baseline and your site's trend, 14 days after a title change, 28 after a content refresh and 90 after a new page, and marks it verified, ineffective or regressed. Codex can read those verdicts for you.
What do I need on the Codex side?
Codex (the CLI, the IDE extension, or Codex inside the ChatGPT desktop app) signed in with your ChatGPT account, and a free SEOmatic account. No API key needed for the browser sign-in.
Will Codex publish to HubSpot CMS without asking?
No. By default every change SEOmatic proposes waits for your approval before it touches your site, and your assistant is told never to approve on its own. Approved changes are stored with the page's previous state, so any edit to an existing page can be rolled back. If you later want low-risk fixes to go ahead on their own, you can turn that on in your autonomy settings; changes to your URLs or indexing, and new content, still wait for you.
Is it free?
Connecting is free with no card. Search Console reports, page checks and 30-page site audits are free, as often as you like; live market data uses free questions, 5 a month plus a one-time 10 when you connect Search Console. Staging and publishing fixes is part of paid plans, which start with a 14-Day Trial for $1, credited to your first payment.
The same SEOmatic server and approval rules, from the agent you prefer.
Claude SEO on your real Search Console data, with fixes you approve in the same chat.
One command connects your Search Console to the terminal, so Claude Code fixes SEO in the code.
Hand Claude Cowork the SEO grunt work: it pulls your real numbers, writes the report into your files, and stages fixes you approve.
ChatGPT SEO on your real Search Console data, with fixes you approve in the same chat.
Your real Search Console data in the Gemini app and in Gemini CLI, with fixes you approve.
An always-on SEO teammate: routines that read your Search Console and speak up when something changes.