Back to Home

codecademy.com SEO Analysis

codecademy.com scores 67/100 for SEO, 36/100 for performance, and 63/100 for AI crawler readability as of Mar 3, 2026.

https://codecademy.com
15 checks
39 issues
Mar 3, 2026
https://codecademy.com
Desktop preview
Desktop
Mobile preview
Mobile
Score Analysis
LIVE
62OF 100
Needs Work
67
SEO
36
Perf
63
AI
Page Title

Just a moment...

Google Search Preview|How your page appears in search results
SERP Score
0/ 100
Needs Work
codecademy.com
https://codecademy.com
Just a moment...
No meta description found
Snippet Quality
Title Length16 chars
03060 optimal90
Description Length0 chars
070160 optimal240
Power Word
CTA
URL Readable
HTTPS
No Truncation
Recommendations3 found
warningTitle too short (16 chars)
Aim for 50-60 characters
infoTitle lacks CTR-boosting power words
Consider adding words like "free", "guide", "best" to improve click-through rate
criticalMissing meta description
Add <meta name="description" content="..."> with 150-160 chars
Performance Report|Google PageSpeed Insights
Lighthouse v13.0.1Mar 3, 2026, 06:24 PM
Status403ERROR
Load Time0.07sFAST
HTML Size5 KBOK
CompressionGZIPON
HTTPSSecureSECURE
Render-Block0 scriptsNONE
0/ 100
Poor
LCPPOOR
16.9 s
Largest Contentful Paint
FCPNEEDS WORK
2.0 s
First Contentful Paint
TBTPOOR
2,670 ms
Total Blocking Time
CLSGOOD
0.001
Cumulative Layout Shift
SIPOOR
8.8 s
Speed Index
TTFBGOOD
Root document took 30 ms
Time to First Byte
FIDPOOR
630 ms
First Input Delay
Page Load FilmstripVisual timeline of how your page renders
Frame at 1.1s
1.1s
Frame at 2.2s
2.2s
Frame at 3.2s
3.2s
Frame at 4.3s
4.3s
Frame at 5.4s
5.4s
Frame at 6.5s
6.5s
Frame at 7.5s
7.5s
Frame at 8.6s
8.6s
Issues Found12 found
criticalLargest Contentful Paint: 16.9 s (poor)high
How to fixOptimize images, preload LCP element, reduce server response time. Target < 2.5s
What this meansLCP measures when the largest visible element finishes rendering.
SEO ImpactSlow LCP increases bounce rate and hurts Core Web Vitals ranking signal.
criticalTotal Blocking Time: 2,670 ms (poor)high
How to fixBreak up long tasks, defer non-critical JavaScript, use web workers. Target < 200ms
What this meansTBT measures total time the main thread was blocked. It's a lab proxy for INP.
SEO ImpactHigh TBT means the page feels unresponsive. This directly impacts INP, a Core Web Vital.
warningSpeed Index: 8.8 s (poor)medium
How to fixOptimize critical rendering path, reduce main-thread work. Target < 3.4s
What this meansSpeed Index measures how quickly content is visually displayed during page load.
SEO ImpactA high Speed Index means the page appears to load slowly.
warningReduce unused JavaScript - Est savings of 1,145 KiB (potential savings: 5250ms) / 1145 KB
How to fixReduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. Learn how to reduce unused JavaScript.
warningAvoid multiple page redirects - Est savings of 780 ms (potential savings: 780ms)
How to fixRedirects introduce additional delays before the page can be loaded. Learn how to avoid page redirects.
warningReduce unused CSS - Est savings of 90 KiB (potential savings: 440ms) / 90 KB
How to fixReduce unused rules from stylesheets and defer CSS not used for above-the-fold content to decrease bytes consumed by network activity. Learn how to reduce unused CSS.
infoMinify CSS - Est savings of 2 KiB (potential savings: 2 KB)
How to fixMinifying CSS files can reduce network payload sizes. Learn how to minify CSS.
infoAvoid enormous network payloads - Total size was 4,671 KiB
How to fixLarge network payloads cost users real money and are highly correlated with long load times. Learn how to reduce payload sizes.
infoReduce JavaScript execution time - 6.5 s
How to fixConsider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to reduce Javascript execution time.
infoMinimize main-thread work - 8.3 s
How to fixConsider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to minimize main-thread work
infoImage elements do not have explicit `width` and `height`
How to fixSet an explicit width and height on image elements to reduce layout shifts and improve CLS. Learn how to set image dimensions
criticalHTTP status 403
How to fixFix the server response
OpportunitiesPotential savings to improve load time
Reduce unused JavaScriptEst savings of 1,145 KiB
Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. Learn how to reduce unused JavaScript.
5.3s potential savings 1145 KB transferable
Avoid multiple page redirectsEst savings of 780 ms
Redirects introduce additional delays before the page can be loaded. Learn how to avoid page redirects.
0.8s potential savings
Reduce unused CSSEst savings of 90 KiB
Reduce unused rules from stylesheets and defer CSS not used for above-the-fold content to decrease bytes consumed by network activity. Learn how to reduce unused CSS.
0.4s potential savings 90 KB transferable
Minify CSSEst savings of 2 KiB
Minifying CSS files can reduce network payload sizes. Learn how to minify CSS.
2 KB transferable
Avoid enormous network payloadsTotal size was 4,671 KiB
Large network payloads cost users real money and are highly correlated with long load times. Learn how to reduce payload sizes.
DiagnosticsAdditional performance insights
Reduce JavaScript execution time
Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to reduce Javascript execution time.
6.5 s
Minimize main-thread work
Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. Learn how to minimize main-thread work
8.3 s
Image elements do not have explicit `width` and `height`
Set an explicit width and height on image elements to reduce layout shifts and improve CLS. Learn how to set image dimensions
Server Backend Latencies
Optimize DOM size
Avoid long main-thread tasks
Avoid large layout shifts
Font display
Duplicated JavaScript
Network Round Trip Times
Render blocking requests
Resources Summary
Network Requests
Final Screenshot
User Timing marks and measures
Diagnostics
Script Treemap Data
3rd parties
Avoid non-composited animations
Minify JavaScript
Initial server response time was short
Layout shift culprits
Metrics
Cumulative Layout Shift
Optimize viewport for mobile
Screenshot Thumbnails
Tasks
Heading Structure|Content hierarchy and heading tags
55 / 100
H1
0
ideal: 1
H2
0
ideal: 2+
H3
0
ideal: optional
H4
0
ideal: optional
Recommendations2
criticalMissing H1 tag
Add exactly one <h1> tag as the main heading
warningNo H2 tags found
Use H2 tags to structure your content sections
Structured Data|Schema markup, Open Graph and Twitter Cards
35 / 100
JSON-LD Schema
Not found
Open Graph
Not found
Twitter Cards
Not found
Microdata
Not found
Recommendations3
criticalNo JSON-LD structured data found
Add JSON-LD schema markup (e.g., WebPage, Organization, Article)
criticalMissing Open Graph tags: og:title, og:description, og:image, og:url, og:type
Add OG meta tags for social sharing
warningNo Twitter Card meta tags
Add twitter:card, twitter:title, twitter:description meta tags
Image Optimization|Alt text, lazy loading and dimensions
80 / 100
Total Images
0
Missing Alt Text
0
Missing Dimensions
0
Lazy Loaded
0%
0 of 0 images
Recommendations1
infoNo images found
Consider adding relevant images
Indexability|Robots, canonical and sitemap
50 / 100
Canonical URL
Missing
Noindex
Blocked
meta robots: noindex,nofollow
Robots.txt
Found
Sitemap
Found
https://codecademy.com/sitemap.xml
Crawl Directives
Meta Robotsnoindex,nofollow
X-Robots-TagNot set
GooglebotNot set
NofollowYes — links not followed
CanonicalNot set
Page URLhttps://codecademy.com
Recommendations3
warningNo canonical tag found
Add <link rel="canonical"> pointing to the preferred URL
criticalPage has noindex directive
Remove noindex from meta robots or X-Robots-Tag if you want this page indexed
warningPage has nofollow directive
Remove nofollow if you want search engines to follow links
Content Structure|Content quality and semantic HTML
80 / 100
Word Count
477
Paragraphs
0
All good length
Lists
0
Words per Heading
477
Ideal: 100-300
Semantic HTML Elements
<main>
<article>
<nav>
<header>
<footer>
Recommendations2
warningPoor content chunking (477 words/heading)
Add more headings to break content into digestible chunks (aim for 150-200 words per section)
warningFew semantic HTML5 elements used
Use <main>, <article>, <nav>, <header>, <footer>, <section>
AI Readability|How easily AI models can process your content
90 / 100
84Flesch
Reading Level
Very Easy
AI-friendly
Total Words
477
Sentences
56
Avg Sentence Length
9 words
Vocabulary Richness
66%
316 unique words
Recommendations1
infoFirst paragraph is too short for AI summarization
Make the first paragraph a comprehensive summary (30-50 words)
AI Citation Potential|How likely AI will quote your content
50 / 100
Named Entities
1
21% density
FAQ Patterns
0
No FAQ Schema
Citations
0
Lists & Tables
0 items, 0 tables
Top Named Entities
JavaScript1
Recommendations6
warningLow entity density
Include more specific names, brands, places. AI uses entities for knowledge graph matching.
infoNo entities repeated 3+ times
Reinforce key entities by mentioning them multiple times
warningLow quoteability - few clear, citable statements
Add bold key statements, blockquotes, or clear definitions that AI can extract
warningNo FAQ-style content detected
Add question-and-answer sections with heading questions (H2/H3 with "?")
Content Freshness|Date signals and cache headers
75 / 100
Date Signals
None
No date signals found on page
Cache Control
Not set
ETag
Not set
Date Signals
Last-Modified HeaderNot found
Published DateNot found
Modified DateNot found
Recommendations2
warningNo datePublished or dateModified in structured data
Add datePublished and dateModified to your JSON-LD schema.
infoNo date/time signals found anywhere on page
Add <time datetime="..."> elements or schema dates to help AI assess content freshness
Security Headers|HTTP security headers analysis
80 / 100
Content-Security-Policy
Prevents XSS and injection attacks
MISSING
Strict-Transport-Security
Forces HTTPS connections
max-age=31536000; includeSubDomains; preload
SET
X-Frame-Options
Prevents clickjacking attacks
SAMEORIGIN
SET
X-Content-Type-Options
Prevents MIME-type sniffing
nosniff
SET
Referrer-Policy
Controls referrer information
same-origin
SET
Permissions-Policy
Controls browser features
accelerometer=(),browsing-topics=(),camera=(),clipboard-read=(),clipboard-write=(),geolocation=(),gyroscope=(),hid=(),interest-cohort=(),magnetometer=(),microphone=(),payment=(),publickey-credentials-get=(),screen-wake-lock=(),serial=(),sync-xhr=(),usb=()
SET
Recommendations1
criticalMissing Content-Security-Policy header
Add Content-Security-Policy header to prevent XSS and data injection attacks
Trust Signals|Essential trust-building pages
75 / 100
Contact Page
MISSING
A contact page builds trust with visitors and search engines
About Page
MISSING
An about page establishes credibility and expertise
Privacy Policy
MISSING
Required for compliance and builds user trust
Terms of Service
MISSING
Protects both the site owner and users
Recommendations2
warningMissing trust pages: contact, about, privacy, terms
Add links to Contact, About, Privacy Policy, and Terms pages.
infoNo author attribution found
Add author information via schema markup or rel="author" for E-E-A-T signals
Tech Stack|2 technologies detected
60 / 100
CDN1
☁️
Cloudflare
Server: cloudflare
header
Frameworks1
📝
WordPress
Script signature
javascript