Coming soon — self-hosting is not available yet. This page describes how deployment is designed to work, so the requirements and the operating model are accurate and worth reading. What is not yet true is the availability: the platform is being run as a hosted service first, while the keyword and SERP corpus it depends on is built. There is no self-hosted licence to buy today. Ask via the licence and plans page to be told when there is.
What it is
The whole platform runs on your own server. Your crawl data, keyword lists, rankings and reports stay on infrastructure you control, and there is no per-seat or per-crawl metering to argue about.
Self-hosting will be available to licensees. The software is not distributed publicly, so deployment begins once a licence is agreed — see the licence and plans page.
Requirements
| Component | What you need |
|---|---|
| Python | 3.11 or newer. |
| Memory | 1GB minimum. 2GB comfortable for larger crawls and vector work. |
| Database | SQLite by default — no separate service to run. Postgres for concurrent or larger deployments. |
| Optional | Playwright for JavaScript rendering. Without it the crawler uses plain HTTP. |
How it works
Two supported paths. Docker Compose if you want it running in minutes, or a package install into a virtualenv if you want to manage the process yourself. Both are supplied to licensees along with deployment documentation.
It runs happily behind nginx with TLS. The API binds to localhost by default, which is the right shape for a reverse proxy in front of it.
Single process or many. Queue workers can run inside the API process for a simple deployment, or as separate processes when you want to scale crawls independently. The job queue lives in the database, so it survives restarts and multiple workers share it safely.
What it does for your site
It removes the data-residency question. For an agency with client sites under NDA, or a company whose keyword strategy is commercially sensitive, "the data never leaves our network" is often the requirement that decides the tool. It also removes the recurring cost that makes people cancel SEO tools during a quiet quarter.
Rate limiting
The API throttles its own callers, per API key, so one runaway script cannot
exhaust the server for everyone else. The default is 120 requests a minute with a
burst of 40, and health checks and public pages are exempt. Because you run it
yourself, the limit is yours to set — RATE_LIMIT_PER_MINUTE=0 turns
it off entirely.
Where the results go
Deployment specifics live in security and privacy, and provider configuration in data providers.
Related capabilities
Not available yet
Self-hosted deployment is not available yet. The platform is being run as a hosted service first, while the keyword and SERP corpus it depends on is built. Ask to be told when self-hosting opens.
Enquire about access All features