Directory / plugin
CloudScale SEO AI Optimizer
v4.21.671 · by andrewjbaker
Automatic AI SEO for your whole site - meta, ALT text, links, schema and audio narration on publish. Free BYOK or $10/month.
About this plugin
Most WordPress sites lose search traffic to SEO work nobody has time to do. Meta descriptions go unwritten, images ship with no ALT text, and related posts never get linked. Yoast and RankMath give you the fields; you still fill in every one yourself.
CloudScale SEO AI Optimizer fills them in automatically. On publish, the AI Auto Pipeline writes the meta description, scores the SEO, generates ALT text, builds an on-page summary, and links related articles. One-click Audio Narration turns any post into a spoken article in 11 AI voices. It also runs the technical SEO WordPress skips underneath, and a built-in Site Audit scores your setup across 20+ checks with one-click fixes.
It replaces Yoast Premium and RankMath Pro, in two plans:
Bring Your Own API Key – free, forever. Paste your own Anthropic Claude, Google Gemini or OpenAI key (2 minutes at console.anthropic.com, aistudio.google.com or platform.openai.com) and pay the provider directly: about $0.50-$1.50 per 200 posts, under $0.10 per 100 on Claude Haiku, or nothing on Gemini’s free tier. Setup is install, paste key, click Generate Missing.
Managed Subscription – $10 per month. No API key required, AI usage and audio narration included, cancel anytime.
Core SEO Features
- Custom meta title and description per post and page; canonical URL on every page
- OpenGraph (title, description, image, type, locale) and Twitter/X Card tags
- JSON-LD: Person (author pages), Article/BlogPosting (posts), WebSite (homepage), Breadcrumb
- Configurable site name, locale, Twitter handle, default OG image
- XML sitemap (index + child sitemaps) with configurable post types and taxonomies, plus a plain-text /sitemap.txt for AI crawlers
- robots.txt editor with AI bot blocking (GPTBot, CCBot, Claude-Web, anthropic-ai and others), plus llms.txt support
- noindex controls for search results, 404s, attachments, author archives, tag archives and RSS feeds
- UTM stripping in canonical URLs; widget-pagination and comment-moderation parameters always stripped
AI Auto Pipeline
- Runs every AI operation in the background when a post is published, and optionally on each save
- Per publish: meta description, SEO score, focus keyword, ALT text for all images, AI-suggested internal links, AI summary box and Related Articles
- “Re-run AI Automation” button in the metabox with live log output
AI Meta Writer
- Claude, Gemini or OpenAI, with Automatic (the current recommended model), any listed model, or a custom model ID
- Generate meta descriptions per post or in bulk; fix descriptions that are too short or long, and titles outside the optimal 50-60 characters
- Inline edit on each row
- Configurable length range with auto retry; editable system prompt; Test Key verifies your key
- Scheduled batch generation via WP Cron
AI SEO Scoring
- AI rates each post 0-100 with a one-sentence strengths or weaknesses note
- Calculate SEO Scores runs a bulk pass; Generate Missing scores any post still lacking one
Title Optimiser
- AI suggests SEO-optimised replacement titles for every published post, with a before/after score (0-100)
- Identifies the primary and secondary keywords the article is about
- One-click Apply updates title and slug and 301-redirects the old URL; “Apply All Suggested” does the lot with confirmation
AI Summary Box
- AI summary box prepended to post content: What it is, Why it matters, Key takeaway
- Written SEO-first – primary keyword front-loaded, secondary keywords woven in, optimised for search intent
- Also written into Article JSON-LD as description, abstract and disambiguatingDescription
- Bulk generation with progress and a Stop button; a global show/hide toggle keeps generated content
ALT Text Generator
- Audits all post images for missing ALT text and generates it with article context for relevance
- Bulk generation with progress tracking; Show All reveals images that already have ALT text
Related Articles
- Injects related post links at the top and bottom of every post, block-safe in Gutenberg and classic posts
- AI-scored candidate pool across the full library; configurable counts (2-5 top, 3-10 bottom) with independent toggles
- Generate Missing, Refresh Stale and Sync Counts, with a per post status table
Audio Narration
- Turns any post into a spoken MP3 with one click (Generate Audio, for logged-in editors only), included on the Managed Subscription; a “Listen to this article” player appears under Related Articles
- Eight narrator voices, four female and four male, each in US or British English
- Free voice previews, which never draw on your narration allowance
- Code blocks are never read aloud; each becomes a short spoken note instead
- MP3s land in your media library; regenerating replaces the previous narration
- Includes 500,000 narration characters per month, roughly 9 hours of audio, billed by the actual characters read aloud so there is no per-post limit; a $5 Narration Boost adds a further 400,000 characters that roll over until used
Performance Features
- font-display: swap to kill Flash of Invisible Text, plus font metric overrides to reduce Cumulative Layout Shift
- Defer font CSS via the media=”print” swap technique; auto-download CDN (Google) fonts locally for speed and GDPR compliance
- Defer render-blocking JavaScript with configurable exclusions; optionally skip the emoji script
- HTML, CSS and JS minification (5-15 percent smaller pages)
- HTTPS mixed content scanner and one-click fixer across posts, pages, metadata, options and comments
SEO Health Dashboard
- Dashboard widget with colour coded coverage for meta, SEO score, ALT text, related links and summaries
Dashboard Integration
- Post editor metabox and Gutenberg sidebar panel (CloudScale Meta Boxes): custom title, description, OG image, AI summary fields and one-click generation
Category Fixer
- Suggests better category assignments using Claude on each post’s title, slug, tags and AI summary against your category list
- Up to four categories per post, only ones that already exist, never Uncategorized
- Colour coded review table with confidence, per post Apply and Skip, and Apply All Changed
- Nothing changes until you click Apply
Category Health and Drift Detection
- Post counts per category with a pass/fail coverage indicator
- Drift Detection flags categories that have drifted from their original focus or become catch-all buckets, each with a verdict (drifting or catch-all), confidence score and AI reasoning
Readability Analyser
- Pure-PHP scoring, no AI call required: 0-100 with an Easy / Moderate / Hard label from sentence length, heading density and passive-voice rate
- Colour-coded metabox badge with sentence, heading and passive-voice sub-metrics
- Sortable Readability column; recalculated on save and after each Auto Pipeline run
Humanize
- Scores how human a post reads, 0 to 100: half measured on your server with no AI call, half a blind AI second opinion, every signal shown
- A mild-to-heavy slider rewrites prose by paragraph without touching facts, links, headings, quotes, code or tables, previewing every change
Broken Link Checker
- Finds outbound links in posts and pages that return HTTP 4xx/5xx or fail to connect
- Server-side HEAD request per URL, deduplicated so each external URL is checked once
- SSRF safe: link local, loopback and private IP ranges are blocked
Image SEO Audit
- Flags Media Library SEO issues: missing ALT text, camera-default filenames and oversized files over 500 KB, sorted by issue count with thumbnails and direct edit links
External Services
The plugin contacts the services below, only when you enable and use the relevant feature.
Notes that apply to every service listed here:
- Key handling: any API key, bot token or licence key you enter is stored only in your own WordPress database (wp_options) and is never transmitted anywhere except directly to that service’s own host.
- “Post content” means: the post title, up to 6,000 characters of the post body, and the system prompt you configured.
- No visitor analytics or tracking data is sent. Any personal data a service receives is named in its entry.
- Nothing is sent from your front end. Calls come from a WP Admin action, a WP Cron batch you scheduled, or the Auto Pipeline on publish/update if enabled.
Anthropic Claude API
Service: Anthropic PBC – https://www.anthropic.com/
Endpoint: api.anthropic.com/v1/messages (POST only, so written without a scheme)
Data sent: Post content (see note above).
When data is sent: On Generate, Fix or Generate with Claude; on a scheduled batch for posts without a meta description; on publish/update via Auto Pipeline; or on Test Key, which sends a one-word test message and no post content.
API key: Your own Anthropic key (see key-handling note above).
Privacy Policy: https://www.anthropic.com/legal/privacy
Terms of Service: https://www.anthropic.com/legal/commercial-terms
API documentation: https://platform.claude.com/docs/en/home
Google Gemini API
Service: Google LLC – https://ai.google.dev
Endpoint: generativelanguage.googleapis.com/v1beta/models/ (API base, written without a scheme)
Data sent: Post content (see note above).
When data is sent: Same triggers as Anthropic above, when Gemini is your selected provider.
API key: Your own Google AI key (see key-handling note above).
Privacy Policy: https://policies.google.com/privacy
Terms of Service: https://policies.google.com/terms
API documentation: https://ai.google.dev/gemini-api/docs
OpenAI API
Service: OpenAI, LLC – openai.com
Endpoint: api.openai.com/v1/responses (POST only, so written without a scheme)
Data sent: Post content (see note above).
When data is sent: Same triggers as Anthropic above, when OpenAI is your selected provider.
API key: Your own OpenAI key (see key-handling note above).
Privacy Policy: openai.com/policies/privacy-policy
Terms of Service: openai.com/policies/terms-of-use
API documentation: platform.openai.com/docs
Google Fonts CDN
Service: Google LLC – https://developers.google.com/fonts
Hosts: fonts.googleapis.com and fonts.gstatic.com
Data sent: Only the URL of a Google Font stylesheet already registered on your site.
When data is sent: Only on “Download Fonts” (Performance tab), which copies those font files to your server so they are served locally instead of from Google’s CDN – better GDPR compliance and Core Web Vitals.
API key: None required.
Privacy Policy: https://policies.google.com/privacy
Terms of Service: https://policies.google.com/terms
CloudScale Managed API
Service: CloudScale Consulting (Pty) Ltd – https://cloudscale.consulting
Endpoints: https://api.cloudscale.consulting/v1/messages and https://api.cloudscale.consulting/v1/tts for the AI features; and for the subscription itself https://api.cloudscale.consulting/checkout, https://api.cloudscale.consulting/checkout-start, https://api.cloudscale.consulting/status, https://api.cloudscale.consulting/cancel, https://api.cloudscale.consulting/refund-request, https://api.cloudscale.consulting/recover, https://api.cloudscale.consulting/recover/verify and https://api.cloudscale.consulting/contact
What it is: Optional paid alternative to your own key; provides AI text generation and text-to-speech (Audio Narration) through CloudScale’s API. Billed via PayPal, below.
Data sent: Post content (see note above) for text features; for Audio Narration, the full cleaned article text with code blocks removed, plus your narration prompt. Every call sends headers X-License-Key (your licence key), X-CS-Plugin, X-CS-Plugin-Version and X-CS-Feature (plugin, version, feature), and for light tasks X-AI-Backend (a cheaper route hint). On subscribe or narration boost purchase, the administrator’s email address and this site’s admin URL are sent to /checkout.
When data is sent: On any AI feature or Generate Audio with the Managed API on; on subscribe, narration boost purchase, status check or cancel; and once if you delete the plugin with a subscription active, to cancel it. Leave us a message sends your email, message, hostname and licence key to /contact on Send. The PayPal button sends the product name, hostname and any email typed above it to /checkout-start, to follow up a failed checkout.
API key: Your managed licence key (see key-handling note above).
Privacy Policy: https://cloudscale.consulting/privacy/
Terms of Service: https://cloudscale.consulting/terms/
CloudScale AI model list
Service: CloudScale Consulting (Pty) Ltd – https://cloudscale.consulting
Endpoint: https://api.cloudscale.consulting/v1/plugin-models
What it is: Keeps the model dropdowns current without a plugin update; the built-in list is the fallback.
Data sent: Nothing.
When: At most weekly, from admin screens, once an AI API key is saved.
Privacy Policy: https://cloudscale.consulting/privacy/
Terms of Service: https://cloudscale.consulting/terms/
CloudScale links (no data sent)
Admin screens link to help.cloudscale.consulting and subscriptions.cloudscale.consulting. These are plain links; the plugin sends them no data.
Telegram Bot API
Service: Telegram Messenger Inc. – https://telegram.org
Endpoint: api.telegram.org, the Bot API sendMessage method, with your bot token in the path
What it is: Optional real-time error alerts to a Telegram chat you own.
Data sent: The error summary (the PHP error message, file, line, and related post ID or URL), plus where it came from: this server’s host name and IP address, the IP address of the request that triggered it, the WordPress username when someone was logged in, and the request method and URI.
When data is sent: Only when a plugin error is caught and a bot token and chat ID are set in Notifications settings.
API key: Your own bot token (see key-handling note above).
Privacy Policy: https://telegram.org/privacy
Terms of Service: https://telegram.org/tos
API documentation: https://core.telegram.org/bots/api
Cloudflare API (optional, cache purge)
Service: Cloudflare, Inc., https://www.cloudflare.com
Endpoint: api.cloudflare.com/client/v4/zones/{zone_id}/purge_cache
Data sent: Your API token and the URLs to purge.
When: With a Zone ID set: on publish/update; on Test Credentials, after saving, and daily, one non-page URL.
Privacy Policy: https://www.cloudflare.com/privacypolicy/
Terms of Service: https://www.cloudflare.com/terms/
PayPal (optional, Managed AI subscription checkout)
Service: PayPal Holdings, Inc. – https://developer.paypal.com
Endpoints: api-m.paypal.com (api-m.sandbox.paypal.com in sandbox mode): /v1/oauth2/token for an access token, /v2/checkout/orders to create an order and /v2/checkout/orders/{order id}/capture to capture it, and /v1/billing/subscriptions/{subscription id} to check a subscription’s status. Plus www.paypal.com/sdk/js, PayPal’s browser SDK, loaded into this plugin’s admin screen from PayPal’s own origin. Docs: https://developer.paypal.com/api/rest/
Data sent: Subscriber email address and subscription amount. Card entry happens on PayPal’s hosted checkout; no card data reaches this plugin.
When data is sent: Only when an administrator opens or checks a Managed AI subscription.
Privacy Policy: https://www.paypal.com/us/legalhub/paypal/privacy-full
Terms of Service: https://www.paypal.com/us/legalhub/paypal/useragreement-full
Broken Link Checker (server-side URL probing)
What it is: Your server sends an HTTP HEAD request to each unique outbound URL in your own published posts and pages, to check its status.
Data sent: The URL only, with standard HTTP headers (a User-Agent identifying your site). No post content, no user data.
When data is sent: Only while you run a scan from the Broken Link Checker tab. No automatic or scheduled scanning.
Note: sslverify is disabled so sites with expired or self-signed certificates can still be checked; loopback, link-local and private IP ranges are blocked. These are third-party sites you linked to yourself, so no single terms of service applies.