www.opsole.com
https://opsole.com/
Scanned on April 9, 2026
Quick Wins — Top 5 Issues to Fix
- ✗2 title tags found — should be exactly 1meta
- ✗No theme-color meta tag — improves mobile browser appearancemeta
- ✗19 images missing width/height — causes layout shift (CLS)content
- ✗No hreflang tags — add if targeting multiple languagestechnical
- ✗Text-to-HTML ratio: 2.6% — too code-heavy, add more contenttechnical
SEO — 79/100 (22 issues)
Failed Checks (22)
- ✗2 title tags found — should be exactly 1meta
- ✗No theme-color meta tag — improves mobile browser appearancemeta
- ✗19 images missing width/height — causes layout shift (CLS)content
- ✗No hreflang tags — add if targeting multiple languagestechnical
- ✗Text-to-HTML ratio: 2.6% — too code-heavy, add more contenttechnical
- ✗Inline CSS: 16.8 KB — too much, move to external stylesheetperformance
- ✗4 render-blocking scripts — add defer or async attributeperformance
- ✗No Cache-Control header — browser cannot cache effectivelyperformance
- ✗Web fonts without font-display: swap — may cause FOITperformance
- ✗1 of 5 internal links are brokencontent
- ✗7 target="_blank" links missing rel="noopener" — security risksecurity
- ✗No Web App Manifest — add for installability and modern web signalstechnical
- ✗3% sentences use transition words — aim for 20%+content
- ✗Only 24% responsive images — add srcset for mobilecontent
- ✗No Permissions-Policy — restrict camera/mic/geo accesssecurity
- ✗1 paragraph(s) exceed 150 words — break up for readabilitycontent
- ✗2 render-blocking script(s) in head — add defer or asyncperformance
- ✗11 duplicate ID(s) found: "73" (3x), "9c1fe51" (3x), "fb7a53d" (3x) — must be unique per HTML specaccessibility
- ✗1 iframe(s) without sandbox attribute — security risksecurity
- ✗Paginated page without rel=next/prev — add for proper crawl chaintechnical
- ✗No IndexNow integration — add for instant Bing/Yandex indexing on content changestechnical
- ✗34 of 37 H2 sections have < 50 words — add more content or merge thin sectionscontent
Passed Checks (84)
- ✓Title tag found: "Entra ID Device Migration Tool | Migrate Without Wipe | Opso..."meta
- ✓Title length: 62 characters (slightly long — aim for under 60)meta
- ✓Meta description found (147 chars)meta
- ✓Description length: 147 chars (optimal)meta
- ✓Viewport meta tag found (mobile-friendly)meta
- ✓UTF-8 charset declaredmeta
- ✓Language attribute set on HTML tagmeta
- ✓No meta refresh redirect (good)meta
- ✓Robots: "follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large"meta
- ✓Single H1 tag foundcontent
- ✓Title-H1 alignment: 50% word overlap (good)content
- ✓37 H2 tags foundcontent
- ✓Heading hierarchy is correctcontent
- ✓876 words on page (good content depth)content
- ✓Readability: 35 (moderate — aim for 60+)content
- ✓15% long sentences (>20 words) — good readabilitycontent
- ✓All 37 images have ALT textcontent
- ✓JS-based lazy loading detectedcontent
- ✓11 of 37 images use legacy formats (JPG/PNG/GIF) — convert to WebP/AVIF for 25-50% smaller filescontent
- ✓38 internal links foundcontent
- ✓4 external links foundcontent
- ✓No empty href attributes foundcontent
- ✓All link texts are descriptive (no "click here" or "read more")content
- ✓Open Graph title foundsocial
- ✓Open Graph description foundsocial
- ✓Open Graph image foundsocial
- ✓Open Graph URL foundsocial
- ✓og:type set to "website"social
- ✓og:site_name: "OPSOLE"social
- ✓Twitter Card: "summary_large_image"social
- ✓Twitter title foundsocial
- ✓Twitter description foundsocial
- ✓Twitter image foundsocial
- ✓HTTPS enabledtechnical
- ✓Canonical tag foundtechnical
- ✓Canonical tag is self-referencing (correct)technical
- ✓Favicon foundtechnical
- ✓Apple touch icon foundtechnical
- ✓Compression: enabled (vary: accept-encoding)technical
- ✓URL length: 19 chars (good)technical
- ✓URL uses hyphens or no separators (good)technical
- ✓No deprecated HTML tags foundtechnical
- ✓Inline JS: 8.5 KB (acceptable)performance
- ✓Font preload/preconnect found — faster font loadingperformance
- ✓HSTS header present — enforces HTTPSsecurity
- ✓X-Content-Type-Options: nosniffsecurity
- ✓Content-Security-Policy header presentsecurity
- ✓About page link found — builds trust and E-E-A-Ttrust
- ✓Contact page/email link foundtrust
- ✓Privacy Policy link foundtrust
- ✓Terms of Service link foundtrust
- ✓Author byline found + author in schematrust
- ✓3 JSON-LD schema block(s) foundschema
- ✓Schema types: ProfessionalService,Organization, WebSite, ImageObject, WebPage, Person, Article, Corporation, Productschema
- ✓<!DOCTYPE html> declaredtechnical
- ✓No mixed content — all resources use HTTPStechnical
- ✓All 3 JSON-LD block(s) have valid syntaxschema
- ✓Viewport includes width=device-width (responsive)meta
- ✓robots.txt found and allows crawlingtechnical
- ✓robots.txt includes Sitemap referencetechnical
- ✓No AI crawlers blocked in robots.txt — AI search and training can access contenttechnical
- ✓sitemap.xml found with valid formattechnical
- ✓Sitemap contains 4 URL(s)technical
- ✓0% nofollow links (0/42) — good link equity flowcontent
- ✓OG image uses absolute URL (correct)social
- ✓2 resource hint(s) (dns-prefetch/preconnect) — faster loadingperformance
- ✓All schema types have required propertiesschema
- ✓14 first-person pronouns — strong personal experiencecontent
- ✓Title uses "|" separator — Google may rewrite it; consider using "—" insteadmeta
- ✓max-image-preview:large — eligible for Google Discover large imagesmeta
- ✓Organization schema includes logoschema
- ✓Referrer-Policy: strict-origin-when-cross-originsecurity
- ✓H1 length: 68 characters (optimal)content
- ✓Title and meta description are different (good)meta
- ✓OG URL matches canonical URL (consistent)social
- ✓Viewport allows zoom (good for accessibility)accessibility
- ✓53 links on page (within limit)content
- ✓DOM size: ~1086 elements (good)performance
- ✓No snippet blocking detected (good — content is fully accessible)technical
- ✓Schema dates consistent: published 2025-04-25T17:43:00+00:00, modified 2026-04-05T15:16:14+00:00schema
- ✓2 third-party script domain(s) (acceptable)performance
- ✓ARIA landmarks present: main, nav, skip-linkaccessibility
- ✓All 6 form input(s) have labels or aria-labelsaccessibility
- ✓1 feed(s) discovered (RSS) — aids content discoverytechnical
AEO — 69/100 (16 issues)
Failed Checks (16)
- ✗Only 0 content sections — segment your content betterdiscoverability
- ✗No definition lists (<dl>) — great for term/value pairsdiscoverability
- ✗No code blocks — add <code>/<pre> for technical contentdiscoverability
- ✗No data tables — tables help AI compare and cite datastructure
- ✗No concise answer paragraphs detected — add short summaries after headingsstructure
- ✗Few key-value patterns — use "**Label:** value" format for AIstructure
- ✗Avg 26 words/section — expand sections for AI comprehensionstructure
- ✗Only 0 concise answer paragraph(s) after headings — add 2+ short summaries (40-200 chars) right after H2/H3 tagscitation
- ✗No Speakable schema — add for voice assistant optimizationvoice
- ✗First paragraph too short for AI snippetsvoice
- ✗No summary section — add Key Takeaways for AI extractionvoice
- ✗Few Q&A blocks — add question headings followed by answer paragraphsvoice
- ✗No /llms.txt found — add one to guide AI crawlers (emerging standard)discoverability
- ✗No Table of Contents — add jump links for AI content navigationstructure
- ✗No video content — multimedia increases AI engagement and citation ratediscoverability
- ✗Statistics lack source references — attribute data to boost AI trustcitation
Passed Checks (36)
- ✓Structured data found — AI can understand your contentdiscoverability
- ✓876 words in HTML — good content for AI parsingdiscoverability
- ✓Clean URL structurediscoverability
- ✓4 semantic HTML5 elements founddiscoverability
- ✓Description + OG description both present — clear topic signalsdiscoverability
- ✓47 named entities found — helps AI understand contextdiscoverability
- ✓38 internal links — good topic cluster signaldiscoverability
- ✓FAQ content detected — great for AI answers (Note: FAQ rich results limited to gov/health sites since Aug 2023)structure
- ✓Question-style headings found — ideal for AI snippetsstructure
- ✓9 lists found — structured content for AIstructure
- ✓Step-by-step content detected — AI loves procedural answersstructure
- ✓85% short sentences — easy for AI to extractstructure
- ✓95% concise paragraphs — scannable for AIstructure
- ✓Author information found — builds E-E-A-Tcitation
- ✓Publication/modification date foundcitation
- ✓Statistics and data found in content — highly citablecitation
- ✓Organization schema found — AI can identify your brandcitation
- ✓5/5 E-E-A-T signals presentcitation
- ✓Source citations found — increases AI trustcitation
- ✓3 external links — references authoritative sourcescitation
- ✓Content references 2026/2025 — fresh contentcitation
- ✓Topic focus: 100% — title keywords found in contentcitation
- ✓41 conversational words — good for AI summariesvoice
- ✓SearchAction schema found — sitelinks search box enabledvoice
- ✓Avg 15 words/sentence — easy reading levelvoice
- ✓Active voice dominant (0% passive) — AI-friendlyvoice
- ✓Pronoun density: 1.0% — engaging, user-focusedvoice
- ✓40 H2/H3 headings — good content structure for AIvoice
- ✓No AI-blocking robots directives — AI crawlers can access contentdiscoverability
- ✓Freshness signal found (Last-Modified header or dateModified)citation
- ✓AI crawlers allowed in robots.txt (0/4 explicitly listed)discoverability
- ✓2 sameAs social links in schema — strong brand signal for AIcitation
- ✓Brand name consistent across 3/3 signals (title, OG, schema)citation
- ✓Content updated within 90 days — fresh content gets 3.2x more AI citationscitation
- ✓5 collapsible section(s) (<details>) — interactive AI-friendly contentstructure
- ✓Brand "OPSOLE" used consistently (24 mentions)citation
GEO — 62/100 (22 issues)
Failed Checks (22)
- ✗Few question headings — add Q&A headings for AI Overviewoverview
- ✗Title and H1 don't align — confusing for AI topic matchingoverview
- ✗No step-by-step content — add numbered guides for AIoverview
- ✗No expert quotes — add professional opinions for credibilityauthority
- ✗No examples or case studies — add real-world examplesauthority
- ✗Few industry terms — use relevant jargon for topical authorityauthority
- ✗No links to authoritative sources — cite Google, Schema.org, etc.authority
- ✗No FAQ Schema — add for Google rich results + AI Overviewformat
- ✗No HowTo Schema — add for step-by-step rich resultsformat
- ✗No summary section — add Key Takeaways or TL;DR for AIformat
- ✗No BreadcrumbList schema — add for better AI contextformat
- ✗Only one list type — use both <ul> and <ol> for content varietyformat
- ✗Only 2/6 formatting types — use bold, lists, tables, quotes, codeformat
- ✗Single-perspective content — add "on the other hand..." for balanceformat
- ✗No actionable content — add "you should...", "try...", tipsformat
- ✗No conclusion — add recommendations or a verdict sectionformat
- ✗No <time> elements — wrap dates in <time datetime="...">semantic
- ✗Few data points with units — add specific numbers (e.g., "300+ users")semantic
- ✗Few sections have subtopics — add H3 subheadings for depthsemantic
- ✗Only 0 data points — add 5+ statistics for +30-40% AI visibility (Princeton study)authority
- ✗Author lacks credentials — anonymous content is a GEO penaltyauthority
- ✗No <figure>/<figcaption> — wrap images with descriptive captions for AIformat
Passed Checks (36)
- ✓Definition-style content found — featured snippet candidateoverview
- ✓Content freshness signals detectedoverview
- ✓Comprehensive content (876 words, 37 sections)overview
- ✓2-level heading hierarchy — deep content structureoverview
- ✓80% optimal paragraphs (20-80 words) — AI-friendlyoverview
- ✓Author schema markup foundauthority
- ✓Source citations found — increases AI trustauthority
- ✓3/5 trust signals foundauthority
- ✓Brand identity consistent (OG + Schema)authority
- ✓Original research/data signals foundauthority
- ✓3 unique external domains — diverse sourcesauthority
- ✓Comparison content detected — AI loves comparingformat
- ✓37 images all with ALT text — AI can understand visualsformat
- ✓Data visualization elements found (tables/charts)format
- ✓4 entity types in Schema — AI can classify contentsemantic
- ✓7/14 semantic HTML5 elements — deep semantic structuresemantic
- ✓100% title keywords in first 200 words — good prominencesemantic
- ✓21 contextual links — good cross-referencingsemantic
- ✓Content categorization found — clear topic classificationsemantic
- ✓Mobile-friendly (viewport set)technical
- ✓HTTPS secure — trusted by AI systemstechnical
- ✓Page size: 224 KB — reasonabletechnical
- ✓Open Graph fully configured (title, description, image)technical
- ✓Canonical URL set — prevents AI from citing duplicatestechnical
- ✓Page allows AI indexing (no noindex/nosnippet)technical
- ✓8 Schema types — rich structured datatechnical
- ✓Language + OG locale set — clear language signaltechnical
- ✓3 ARIA landmarks found — good accessibility for AItechnical
- ✓All image ALT texts are descriptive (>5 chars)format
- ✓876 words — sufficient depth for AI analysisoverview
- ✓First 200 words contain topic keywords — AI extracts primarily from the startoverview
- ✓Definition + list combo — strong featured snippet candidateoverview
- ✓max-image-preview:large — optimal AI rich result displaytechnical
- ✓3/6 question types (5W1H) in headings — comprehensiveoverview
- ✓Link anchor texts are descriptive — good AI context signalsemantic
- ✓2 authoritative sameAs links (Wikipedia, LinkedIn, etc.) — strong Knowledge Graph signalauthority
Fix These Issues Automatically
Using WordPress? Install SEO Autopilot for one-click auto-fixes on 65+ issues — with full undo support.
Get SEO Autopilot Plugin