If you've ever wished you could audit any webpage's SEO without signing up for a SaaS tool, pasting URLs into an online checker, or paying $99/month — this post is for you.
RankForge is a free Chrome extension that runs a full SEO audit right in your browser's side panel. Everything happens locally. No server. No account. No data ever leaves your machine.
Here's a breakdown of every feature.
The Score System
When you open a page and click Scan, RankForge gives you an overall SEO score from 0 to 100, broken down into four categories:
- Technical — meta tags, canonical, robots, schema, URL structure
- Content — readability, keyword density, headings, image alt text
- Performance — Core Web Vitals, load time, mobile-friendliness
- Social — Open Graph, Twitter Card completeness
Each category is independently scored and clickable, so you jump straight to the relevant section.
11 Tabs, 40+ Features
Overview
Your at-a-glance summary. Score circle, page title/meta status with character count warnings, Social Preview (OG image if available), top critical issues, and a stat grid showing word count, image count, headings, and schema objects.
Dashboard
Full issue list — filterable by critical, warning, or all. Every issue expands to show a plain-English description and a "How to fix" step. There's also a Competitor Compare tool: enter any URL and RankForge fetches and scores it in-browser, then shows a side-by-side table of all five score categories plus word count.
Technical
- Meta Visualizer — title, description, canonical with length and copy button
- Heading Map — full H1–H6 tree, searchable via the header search bar
- Indexing Status — meta robots tag + robots.txt directive
- Schema / JSON-LD Viewer — all structured data on the page, formatted and copyable
- Link Analysis — internal vs external link counts, full link table with anchor text and rel attribute
- URL Structure — depth, query parameters, fragments
-
Sitemap Detection — checks for
sitemap.xmlandsitemap_index.xml
Content
- Readability Scores — Flesch Reading Ease, Flesch-Kincaid Grade, Gunning Fog Index with pass/fail indicators
- Target Keyword Tracker — type your target keywords and see if they appear in the title, meta description, H1, and body — with counts
- Keyword Density — top 15 phrases ranked by frequency and density percentage
- Image Audit — every image on the page with format badge (WebP/AVIF/SVG flagged green, JPEG/PNG flagged amber), missing alt text highlighted in red, lazy-load vs above-fold warnings
- Alt-Text Suggester — auto-generates suggested alt text from filename for any image missing one
Performance
- Core Web Vitals — LCP, INP (which replaced FID as a Core Web Vital in March 2024), and CLS, each with good/needs-improvement/poor thresholds
- Load Time — actual page load measurement with colour-coded status
- Mobile Friendly — viewport meta check
- Tap Target Audit — flags clickable elements smaller than 48×48 CSS pixels (Google's mobile-friendly threshold; WCAG 2.2 SC 2.5.8 sets the absolute minimum at 24×24)
- Contrast Issues — highlights elements with low colour contrast ratios
Social
- OG & Twitter tag checker — all Open Graph and Twitter Card properties with present/missing status and copy buttons
- Social Preview — visual preview card showing how the page looks when shared (with OG image if set)
- SERP Simulator — editable title and description fields with character counters (60/160), live Google-style preview below
Tools
Seven standalone tools in one tab:
| Tool | What it does |
|---|---|
| Ghost Crawler | Strips styles and scripts to show the page as Googlebot sees it |
| CLS Detector | Highlights elements causing Cumulative Layout Shift |
| Smart Redactor | Click any element on the page to blur it — for screenshots |
| Link Highlighter | Colours dofollow and nofollow links directly on the page |
| Contrast Checker | Sample any text element to see its WCAG AA/AAA contrast ratio against its background |
| Markdown Extractor | Extracts page content as clean Markdown with live preview, preset profiles (Blog Post / Documentation / Outline), and direct download |
| Export Reports | Download the full audit as PDF, HTML, CSV, or JSON |
Schema Generator
Generates valid JSON-LD structured data for 10+ schema types: Article, FAQ, HowTo, Product, Review, LocalBusiness, Recipe, BreadcrumbList, VideoObject, and Event. Fill in the fields, preview the output, copy it, or open Google's Rich Results Tester in one click.
Crawl
Crawls up to 50 pages of any site from your browser — no server involved. It finds broken links, orphan pages, pages with missing titles or descriptions, and generates a site-wide issue summary. Progress bar shows the crawl in real time, and you can stop it at any point.
History
Every scan is saved to IndexedDB. The History tab groups scans by domain, shows a score circle per snapshot, and renders a trend sparkline if the same URL has been scanned multiple times — so you can track improvements over time.
Settings
Keyboard shortcuts, links to related tools, and extension info.
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+R |
Re-scan the current page |
Ctrl+K |
Focus the heading search bar |
1–7
|
Jump to tabs directly |
Esc |
Close modals |
Why Local-Only?
Most SEO tools proxy your URL through their servers. That means:
- Your competitor research is logged
- Results depend on their server's geographic location, not your browser
- There's a rate limit or paywall
RankForge runs entirely in your Chrome extension sandbox. The only outbound requests are the ones your browser makes when you explicitly trigger a competitor scan or site crawl — and those go directly from your machine to the target site.
Get It
RankForge is free on the Chrome Web Store: Install RankForge
You can also find it in the NoxaKit tools collection at noxakit.com.
Built with React, Vite, Tailwind CSS, and pdf-lib. The scoring engine, readability analyser, and site crawler all run in the extension's isolated context.
If you find it useful, a review on the store goes a long way — it's the only "algorithm" that decides whether other developers find it.
Top comments (0)