🚀 Inspiration

Small e-commerce businesses lose thousands of dollars in potential revenue every month — not because their products are bad, but because Google can't find them. SEO agencies charge $2,000–$5,000/month. Most Shopify and WordPress store owners can't afford that. We asked: what if an AI agent could do the job of an entire SEO agency, automatically, for the cost of a coffee? Live Demo URL


💡 What It Does

GrowthPilot AI is an autonomous SEO growth agent built specifically for e-commerce businesses. It replaces four expensive tools in one dashboard:

Deep SEO Audit — Crawls every page of your store and identifies 20+ SEO issues ranked by impact: missing meta descriptions, thin content, broken links, slow pages, missing alt text, canonical errors, and more. Each audit produces an overall score with category breakdowns.

AI Content Optimizer — Uses Qwen to rewrite your product titles, meta descriptions, and page copy based on what actually ranks — not generic templates. Produces optimized content ready to copy-paste.

Blog Content Agent — Generates 10 SEO-targeted blog ideas with full outlines, keyword clusters, FAQ sections, and internal link suggestions. Converts ideas directly into full draft posts.

7-Day Action Plan — After each audit, Qwen generates a prioritized day-by-day plan. Day 1–2: quick wins. Day 3–4: on-page fixes. Day 5–6: technical SEO. Day 7: review and re-audit. Each task includes the reason, expected score lift (1–20 points), estimated effort, and expected impact.

Score History & Trend Analysis — Tracks SEO scores over time, compares any two audits side-by-side, and uses Qwen to identify score trends, improvement patterns, risk signals, and the single most important next action.

Growth Roadmap — AI-generated recommendations prioritized by impact vs. effort, categorized by content, technical, on-page, and link-building opportunities.


🛠️ How We Built It

Frontend: Next.js 16 (App Router), Tailwind CSS v4, shadcn/ui components, Recharts for score visualization, pure SVG for custom trend charts.

Backend: Next.js Server Actions, Drizzle ORM, PostgreSQL (Neon), BullMQ job queues for background audit workers.

AI Layer: Qwen-turbo via the AI SDK (@ai-sdk/openai with custom base URL). Every AI feature — content optimization, blog generation, trend analysis, action plan generation — runs through Qwen. We chose Qwen for its strong reasoning on structured tasks and its ability to return reliable JSON without tool-calling overhead.

Memory Layer: Redis (Upstash) as the primary data store for SEO memory: score history (sorted sets), audit snapshots (hashes), recommendation history (lists), blog post index, and user context. PostgreSQL serves as fallback for historical data. This gives the AI full context of a site's history when generating recommendations.

Web Crawling: Custom crawler built with Cheerio that checks titles, meta descriptions, headings, image alt text, canonical tags, internal links, word count, and page load signals. Runs in BullMQ background workers to avoid blocking the UI.

Auth: better-auth with session management and middleware-based route protection.


🧗 Challenges

Making Qwen output reliable JSON at scale. Qwen sometimes wraps JSON in markdown code fences (`json) or adds commentary. We built a robust parser that strips fences, handles partial JSON, and falls back gracefully. We also learned that structured prompts with explicit schema examples dramatically improved consistency.

The Redis memory architecture. Designing a memory layer that gives the AI rich context without slowing down the UI was non-trivial. We settled on a read-through cache: check Redis first, fall back to PostgreSQL, write-through on new data. This keeps latency low while ensuring no context is lost.

Crawling dynamic e-commerce sites. Shopify and WooCommerce sites often load products via JavaScript. We had to handle redirects, pagination, robots.txt, canonical chains, and sites with 500+ pages without hammering the server.

Prompt engineering for actionable output. Early versions of the action plan were too generic ("improve your content quality"). We rewrote prompts to explicitly require specific pages, specific issues, specific expected score lifts. The output quality jumped dramatically.


🏆 Accomplishments

  • Built a fully functional end-to-end SEO SaaS product in under 72 hours
  • Qwen generates action plans indistinguishable from what a human SEO consultant would write
  • The trend analysis correctly identified patterns across multiple audit runs, surfacing non-obvious insights (e.g., "your image optimization score keeps improving but canonical issues persist — this is your #1 risk")
  • Score history + comparison UI gives store owners something SEO agencies charge thousands for
  • The blog agent went from zero to a full draft post in under 30 seconds

📚 What We Learned

Qwen is exceptional at structured reasoning tasks. Given a clear schema and examples, Qwen consistently produces well-reasoned, prioritized recommendations that feel genuinely expert — not filler content.

Memory makes AI dramatically smarter. The difference between Qwen with zero context ("here are your current issues") vs. Qwen with 6 months of history ("your score dropped after the October audit and here's why") is night and day. Context is everything.

AI products need feedback loops. The 7-day action plan only becomes valuable if the user re-audits and sees their score improve. We built the entire UX around this loop: audit → plan → fix → re-audit → compare.


🔭 What's Next

Competitor gap analysis using GSC data, automated content publishing via CMS integrations, and a multi-site dashboard for agencies.

Track: MemoryAgent — GrowthPilot's Redis memory layer enables persistent, cross-session learning from every audit, tracking site health over time and building an evolving context for more accurate AI recommendations.

Built With

Share this project:

Updates

posted an update

Key Features: - Google Search Console Integration: - Added OAuth authorization flow in Settings (/api/integrations/google). - Implemented gsc-sync-worker to automatically fetch daily metrics (clicks, impressions, ctr, position). - Added GSC worker to supervisord.conf for process management. - Striking Distance Keywords (Pain Point 1): - Created Keywords dashboard to visualize GSC data. - Added dedicated logic to filter and highlight 'Low Hanging Fruit' (Page 2-4 keywords with high impressions). - Added one-click [Boost with Content AI] integration with defaultKeyword autofill. - EEAT Brand Assets Injection (Pain Point 2): - Updated DB schema to include companyInfo in the sites table. - Built CompanyInfoForm in the Site Detail page to collect real company assets (background, certifications, MOQ, etc.). - Upgraded Qwen prompt strategy in content.ts to seamlessly inject companyInfo into blog generation.

Log in or sign up for Devpost to join the conversation.