Self-hostable · Next.js 16 · PostgreSQL · Redis

Local SEO, measured — not guessed.

One command center for Google Business Profile, real 3-pack rankings, citation consistency, technical crawls, structured data, AI content and client reports — with multi-tenant RBAC for agencies.

No fake dashboards: every number on screen is backed by a live API, your own crawl, or your database.

Twelve modules, one tenant-scoped database

Each module is a real feature in the app, not a mockup. Links below go to the actual screens.

Live in three steps

01

Connect Google

One OAuth consent gives the platform your Business Profile, Search Console and Ads data. Tokens are encrypted at rest with AES-256-GCM.

02

Add your business

Enter real NAP details, services and the keywords you want to track. Quotas are enforced per plan straight away.

03

Automate & report

Turn on the automations you need. Rankings, crawls, posts and reports run on schedule and land in one dashboard.

Plans with enforced quotas

Limits are checked server-side on every write, so a plan is a real boundary — not a label.

Starter

Ideal for single local businesses getting started with Google 3-Pack rankings.

$49/month

$39/month when billed annually

  • 1 Business & 3 Locations
  • 50 Tracked SERP Keywords
  • Google Business Profile Sync & AI Posts
  • Basic SEO Technical Audits
  • Standard Review Response Generator
  • Monthly Executive PDF Reports
  • ·1 businesses · 3 locations
  • ·50 keywords · 20 crawls/mo
  • ·100 AI generations/mo
Open Dashboard
Most popular

Professional

Designed for fast-growing multi-location businesses and boutique SEO consultants.

$149/month

$119/month when billed annually

  • 5 Businesses & 20 Locations
  • 250 Tracked Keywords with Daily Updates
  • Google Search Console AI Striking Distance
  • Competitor Gap Analysis Engine
  • Schema.org Generator & Rich Snippets Validator
  • Weekly Automated Health Crawls
  • Priority Gemini Copilot Assistance
  • ·5 businesses · 20 locations
  • ·250 keywords · 100 crawls/mo
  • ·500 AI generations/mo
Open Dashboard

Agency

Built for SEO agencies managing multiple client workspaces with custom white-label reports.

$299/month

$239/month when billed annually

  • 25 Businesses & 100 Locations
  • 1,500 Tracked Keywords with Local Geo-Grid
  • Backlink Discovery DB & Outreach CRM
  • Citation NAP Audit & Consistency Checker
  • White-Label Agency Client PDF/CSV Reports
  • Custom Automated Cron Workers (BullMQ)
  • Multi-User Team RBAC Access
  • ·25 businesses · 100 locations
  • ·1500 keywords · 500 crawls/mo
  • ·2500 AI generations/mo
Open Dashboard

Questions engineers ask

Does the platform invent rankings or review data?

No. Every metric comes from a live source — the Google Business Profile API, a SERP provider such as DataForSEO or SerpApi, your own crawl, or Search Console. If an integration is not configured, the screen tells you that instead of showing placeholder numbers.

Which SERP provider should I use for local rankings?

DataForSEO (login + password) or SerpApi (API key). Both are supported through the same client, with per-query pricing, monthly budget caps and Redis-backed caching so you do not pay twice for the same keyword.

Can an agency manage multiple clients?

Yes. Agencies contain workspaces, workspaces contain businesses, and users are assigned roles: SUPER_ADMIN, AGENCY_OWNER, SEO_MANAGER, CONTENT_MANAGER, CLIENT and VIEWER. Every API request is tenant-scoped, so one client can never read another client's data.

How are Google tokens stored?

Access and refresh tokens are encrypted with AES-256-GCM using your ENCRYPTION_KEY before being written to the database, and decrypted only inside the API client for the duration of a call.

Can I self-host it?

Yes. The repository ships a multi-stage Dockerfile plus a compose stack with PostgreSQL 16 and Redis 7. Run `npm run setup` locally, or `docker compose up -d --build` in production.

What does it cost?

Plans are listed below and enforced in-app: businesses, locations, tracked keywords, crawls and AI generations are limited per tier. Billing is handled through Stripe once STRIPE_SECRET_KEY is configured.

Start with your own data

Create a workspace, connect Google, and watch the first real rankings and citations arrive.