# ITPP SEO Audit Tool — Product Proposal **Status:** PROPOSED **Date:** 2026-08-10 **Product Type:** ITPP Toolset — Hosting Add-on **Git Repo:** `git.itpropartner.com/ippadmin/seo-tool` --- ## Executive Summary IT Pro Partner sells web hosting. Every hosting client launches a site with SEO problems they don't know about — missing meta tags, no sitemap, broken canonical, zero structured data. These problems cost them traffic and conversions. They don't find out until they hire an SEO consultant 6 months later, by which point they've lost thousands in potential revenue. The SEO Audit Tool flips this: every ITPP hosting client gets a launch-day audit, monthly monitoring, and actionable fix-it snippets. It's an automated system — not a manual checklist — that catches issues before the client notices them. **The competitive moat:** Bluehost, GoDaddy, SiteGround, Cloudways — none of them bundle automated SEO auditing into hosting. This is a retention tool first (clients see value every month) and a revenue add-on second ($49/mo per site). --- ## Market Context ### The Problem Small business websites have predictable SEO failures: - **Missing meta descriptions** — 63% of small business sites have no meta descriptions (source: Ahrefs study of 1M domains) - **No structured data** — under 5% of small business sites use JSON-LD - **Missing sitemap** — a silent killer; Google can still crawl without one, but slower - **No OG tags** — social shares look broken, reducing referral traffic - **Dead internal links** — every site accumulates rot over time, Google penalizes this - **No analytics/tracking** — the client has no idea if their site works ### The Current Alternatives | Option | What Happens | Cost | |--------|--------------|------| | Hire SEO consultant | Manual audit, one-time, $500-2,000 | High, one-shot | | Semrush / Ahrefs | Full suite, overkill for SMB | $129-449/mo | | Screaming Frog | Desktop crawler, technical | $259/yr | | Free tools (Google Search Console) | Fragmented, no synthesis | $0 but nobody uses them | | **Nothing** | Site launches with problems, loses traffic | $0 upfront, costs revenue | **Nobody does "launch-day audit + monthly watch" for small business sites.** It's either expensive one-time consultant, expensive ongoing enterprise tooling, or nothing. The gap is the integrated hosting add-on. --- ## Product Description ### Core Features 1. **Launch Audit** — runs automatically when a site goes live on ITPP hosting. Crawls all pages, checks: - Meta titles and descriptions (presence, length, uniqueness) - Heading hierarchy (H1-H6) - OG tags and Twitter cards - Canonical URLs - JSON-LD structured data - robots.txt and sitemap.xml - Image alt text - Internal link health - Page load performance - Mobile responsiveness - SSL certificate status 2. **Fix-It Snippets** — not just "your meta description is missing." The audit produces: - Exact HTML to paste (per page) - Priority-ranked fix list - Before/after previews - Copy-paste ready code blocks 3. **Monthly Crawl & Trend Report** — every 30 days: - Issues introduced vs resolved - Score trend (0-100) per page - New pages detected - Broken links found - Ranking changes (via GSC integration) 4. **White-Label Dashboard** — hosted at `seo.itpropartner.com` (or client-branded): - Per-site audit scores - Issue lists with fix status - Historical trends - Export to PDF for client reports 5. **Email Reports** — monthly digest per site, configurable: - Summary score + trend arrow - Top 3 urgent issues - Link to full report ### Architecture ``` ┌─────────────────────────────────────────────────┐ │ ITPP Hosting │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ Site A │ │ Site B │ │ Site C │ │ │ └────┬─────┘ └────┬─────┘ └────┬─────┘ │ │ │ │ │ │ │ ▼ ▼ ▼ │ │ ┌──────────────────────────────────────────┐ │ │ │ SEO Crawler (Cron Job) │ │ │ │ • Crawls all hosting subdirectories │ │ │ │ • Runs per-site: 5 min crawl │ │ │ │ • Detects new/deleted pages │ │ │ └─────────────────┬────────────────────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────────────────────────────┐ │ │ │ Audit Engine (Python) │ │ │ │ • BeautifulSoup + lxml parsing │ │ │ │ • 50+ checks per page │ │ │ │ • De-dupes across pages │ │ │ │ • Generates fix snippets │ │ │ └─────────────────┬────────────────────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────────────────────────────┐ │ │ │ AI Enhancement (Optional) │ │ │ │ • DeepSeek V4 Pro via admin-ai │ │ │ │ • Keyword opportunity analysis │ │ │ │ • Content gap detection │ │ │ │ • Competitor comparison │ │ │ └─────────────────┬────────────────────────┘ │ │ │ │ │ ▼ │ │ ┌──────────────────────────────────────────┐ │ │ │ Dashboard (Flask/FastAPI) │ │ │ │ • seo.itpropartner.com │ │ │ │ • Per-site reports │ │ │ │ • PDF export │ │ │ │ • Email delivery (Mailgun/SES) │ │ │ └──────────────────────────────────────────┘ │ └─────────────────────────────────────────────────┘ ``` ### Technical Stack | Layer | Technology | Rationale | |-------|-----------|-----------| | Crawler | Python + requests + BeautifulSoup | Fast, no JS rendering needed for audit | | Checks engine | Python library (standardized check classes) | Extensible — add new checks without touching core | | AI layer | admin-ai (DeepSeek V4 Pro) | $0.25/audit, only for paid tier | | Dashboard | FastAPI + HTMX | Lightweight, server-rendered, no SPA overhead | | Database | SQLite per-site | Zero config, portable, works at scale for this use case | | Scheduling | Systemd timers + cron | Built-in, no additional dependency | | Email | Mailgun API | Reliable, cheap, already in ITPP stack | | PDF | WeasyPrint | HTML → PDF with CSS, no headless browser needed | --- ## Pricing & Packaging ### Tier Structure | | Free (All Hosting) | Pro ($49/mo) | Agency ($149/mo) | |---|---|---|---| | **Launch Audit** | ✅ | ✅ | ✅ | | **Fix-It Snippets** | ✅ | ✅ | ✅ | | **Monthly Crawl** | ✅ | ✅ | ✅ | | **Email Reports** | ✅ | ✅ | ✅ | | **Dashboard Access** | ✅ | ✅ | ✅ | | **AI Enhancement** | ❌ | ✅ | ✅ | | **GSC Integration** | ❌ | ✅ | ✅ | | **Sites Included** | 1 | 1 | 5 | | **White-Label Reports** | ❌ | ❌ | ✅ | | **PDF Export** | ❌ | ✅ | ✅ | | **Competitor Tracking** | ❌ | ❌ | ✅ | ### Revenue Model - Every ITPP hosting client gets Free tier at launch (retention) - Conversion target: 15-20% of clients upgrade to Pro - Agency tier: target web design agencies who host client sites with ITPP - Annual billing: Pro = $499/yr (save 15%), Agency = $1,499/yr ### Unit Economics (per 100 clients) | Metric | Value | |--------|-------| | Free tier cost/site/month | $0.08 (crawler + storage) | | Pro tier cost/site/month | $0.35 (crawler + AI + GSC) | | Agency tier cost/site/month | $0.65 (crawler + AI + multi-site) | | Pro LTV (24 months) | $1,176 | | Pro CAC (hosting upsell) | ~$15 (email campaign + dashboard prompt) | | LTV:CAC | 78:1 | --- ## Competitive Analysis ### Direct Competitors (White-Label SEO Audits) | Tool | Pricing | Target | Gap vs ITPP | |------|---------|--------|-------------| | **MetricSpot** | $29-99/mo | Agencies | Not hosting-integrated; separate platform | | **WooRank** | $79-249/mo | Agencies/enterprise | Expensive; overkill for SMB | | **marketgoo** | $49-149/mo | Hosting add-on | Closest competitor; but partners with hosts, doesn't own the hosting | | **SEOptimer** | $19-59/mo | SMB/agencies | Good reports, no hosting integration | | **SiteGuru** | $29-99/mo | SMB | Technical SEO focus, no AI, limited whitespace | ### Indirect Competitors | Tool | Pricing | Why Indirect | |------|---------|-------------| | **Semrush** | $129-449/mo | Full marketing suite; overkill for SMB owner | | **Ahrefs** | $99-999/mo | SEO power tool; steep learning curve | | **Screaming Frog** | $259/yr | Desktop app; technical; one-shot | | **Google Search Console** | Free | Fragmented; no synthesis; nobody checks it | ### Moat Analysis | Moat Factor | ITPP | Competitors | |-------------|------|-------------| | **Hosting integration** | ✅ Native — runs on our servers, no config | ❌ None (marketgoo partners but doesn't own infra) | | **Auto-discovery** | ✅ Detects new sites and pages automatically | ❌ Manual setup or API integration required | | **Fix-it snippets** | ✅ Exact copy-paste HTML per page | ⚠️ Some generate generic recommendations | | **AI analysis** | ✅ admin-ai stack, cost-controlled | ⚠️ Some offer AI; pricing uncertain | | **Price point** | ✅ Free tier → $49/mo upsell | ⚠️ $19-249/mo range | | **Client retention** | ✅ SEO scores as monthly value proof | ❌ Standalone tools; client can cancel anytime | --- ## Build Plan ### Phase 1: Core Crawler + Audit Engine (Week 1-2) - Python crawler that walks `/home/*/htdocs/*/` directory trees - Page parser: BeautifulSoup + lxml - 20 core checks: meta tags, headings, OG, canonical, structured data, images, links - JSON output per site ### Phase 2: Dashboard + Snippets (Week 2-3) - FastAPI backend with SQLite per-site - HTMX dashboard at seo.itpropartner.com - Fix-it snippet generator (exact HTML per issue) - Launch audit auto-trigger on new site detection ### Phase 3: AI Layer + Email (Week 3-4) - Optional AI enhancement using admin-ai - Keyword gap analysis - Competitor content analysis - Monthly email reports via Mailgun - PDF export (WeasyPrint) ### Phase 4: Agency Tier + GSC (Week 4-5) - Multi-site dashboard for agencies - White-label branding (logo, colors, domain) - Google Search Console API integration - Ranking trend data - Competitor tracking ### Phase 5: Launch + Hosting Integration (Week 5-6) - Auto-enable Free tier for all ITPP hosting clients - Dashboard prompt: "Upgrade to Pro for AI analysis" - Client onboarding email sequence - Documentation and KB articles --- ## Risk Assessment | Risk | Likelihood | Impact | Mitigation | |------|-----------|--------|------------| | Low conversion to Pro | Medium | High | Make Free tier genuinely useful; prompt upgrade at pain points | | AI cost overrun | Low | Medium | Rate limit AI analysis; cost per audit is <$0.25 | | Competitor entry | Medium | Low | Hosting integration is hard to replicate without owning the servers | | Google algorithm changes | Low | Low | Checks are standards-based (schema.org, W3C); adapt checks, not architecture | | Crawler load on servers | Low | Low | Run off-peak; rate-limit; incremental only | --- ## Git Repository Structure ``` seo-tool/ ├── README.md ├── proposal.md ├── architecture.md ├── LICENSE ├── src/ │ ├── crawler/ │ │ ├── __init__.py │ │ ├── site_discovery.py # Walk hosting directories │ │ ├── page_fetcher.py # HTTP fetch + local file read │ │ └── sitemap_parser.py # Sitemap XML parsing │ ├── checks/ │ │ ├── __init__.py │ │ ├── base.py # Abstract check class │ │ ├── meta_tags.py # Title, description, robots │ │ ├── headings.py # H1-H6 hierarchy │ │ ├── social.py # OG, Twitter cards │ │ ├── structured_data.py # JSON-LD, schema.org │ │ ├── seo_files.py # robots.txt, sitemap.xml │ │ ├── images.py # Alt text, dimensions │ │ ├── links.py # Internal links, broken links │ │ └── performance.py # Page size, load time │ ├── engine/ │ │ ├── __init__.py │ │ ├── auditor.py # Run all checks, produce report │ │ ├── scorer.py # 0-100 scoring algorithm │ │ └── snippet_gen.py # Fix-it HTML generator │ ├── ai/ │ │ ├── __init__.py │ │ ├── keyword_analysis.py # Keyword opportunities via admin-ai │ │ ├── content_gap.py # Content gap detection │ │ └── competitor.py # Competitor page analysis │ ├── dashboard/ │ │ ├── __init__.py │ │ ├── app.py # FastAPI application │ │ ├── templates/ # HTMX templates │ │ ├── static/ # CSS, JS │ │ └── pdf.py # WeasyPrint PDF export │ ├── integrations/ │ │ ├── __init__.py │ │ ├── gsc.py # Google Search Console API │ │ └── mailgun.py # Email delivery │ └── cli.py # Command-line interface ├── config/ │ ├── checks.yaml # Enabled checks + thresholds │ └── scoring.yaml # Scoring weights ├── tests/ │ ├── test_crawler.py │ ├── test_checks.py │ ├── test_engine.py │ └── fixtures/ # Sample HTML pages ├── docs/ │ ├── api.md │ ├── checks-reference.md │ └── deployment.md └── cron/ ├── launch-audit.sh # Triggered on site creation ├── monthly-crawl.sh # Monthly scheduled audit └── weekly-cleanup.sh # Rotate old reports ``` --- ## Financial Projections ### 12-Month Revenue Ramp | Quarter | Hosting Clients | Pro Conversions | Agency Conversions | MRR | |---------|----------------|-----------------|-------------------|-----| | Q1 | 20 | 2 (10%) | 0 | $98 | | Q2 | 30 | 5 (17%) | 1 | $394 | | Q3 | 45 | 8 (18%) | 2 | $690 | | Q4 | 60 | 12 (20%) | 3 | $1,035 | **Y1 total revenue:** ~$6,600 **Y1 cost:** ~$1,200 (AI, Mailgun, negligible computing) **Y1 net:** ~$5,400 ### 3-Year Projection | Year | Clients | Pro (20%) | Agency (5%) | ARR | Net | |------|---------|-----------|-------------|-----|-----| | Y1 | 60 | 12 | 3 | $12,420 | ~$5,400 | | Y2 | 120 | 24 | 6 | $24,840 | ~$18,000 | | Y3 | 200 | 40 | 10 | $41,400 | ~$33,000 | --- ## The Ask | Resource | Need | |----------|------| | Dev time | ~40 hours total (5-6 weeks part-time) | | AI costs | ~$5-10/month during development (testing) | | Mailgun | Already in ITPP stack ($0 incremental) | | Domain | seo.itpropartner.com (subdomain, $0) | | Git repo | Create on git.itpropartner.com | --- ## Next Steps 1. Create `git.itpropartner.com/ippadmin/seo-tool` repo 2. Build Phase 1 (crawler + check engine) — 2 weeks 3. Deploy dashboard stub at seo.itpropartner.com 4. Run pilot audit on modelortho.com (validation) 5. Launch Free tier for all ITPP hosting clients --- *ITPP SEO Audit Tool — A product of IT Pro Partner*