Open-source AI brand visibility and competitor reports
### Does AI recommend your product? Who shows up instead?
Enter a domain and see whether AI recommends you, which competitors appear, and which sources shape the answer.
[Next Preview](./NEXT_PREVIEW.md) · [简体中文](./README.zh-CN.md) · [Quick start](#3-minute-audit) · [Releases](https://github.com/Albert-Weasker/niubigeo/releases) · [Packages](https://github.com/Albert-Weasker/niubigeo/pkgs/container/niubigeo) · [Compare tools](#niubigeo-vs-commercial-ai-visibility-tools)
NiubiGEO Next Preview is available:
Read the redesigned AI domain-recognition monitor
·
查看简体中文预告
[!IMPORTANT]
NiubiGEO Next Preview is available. The next version moves from one-time AI visibility audits to long-term AI domain-recognition monitoring. [Read the preview](./NEXT_PREVIEW.md) / [简体中文](./NEXT_PREVIEW.zh-CN.md).
## You shipped a product. Does AI know it exists?
More users now ask AI directly instead of clicking through a page of search results:
What tools should I use?
What products exist in this category?
What are the alternatives to this product?
Which one should I choose?
Your website may already be indexed by search engines, but AI may still:
NiubiGEO does not hide this behind an unexplained score. It shows the questions, answers, competitors, and sources so you can understand how AI sees your market.
## What you get from one audit
### How AI understands your brand
See which models recognize your brand, how they describe your product, and what they leave out.
### Who AI treats as competitors
When users do not mention your brand, see which products AI brings up instead. NiubiGEO separates confirmed competitors from loosely related names.
### Where your brand is missing
Find customer questions where competing products appear and your product does not.
### Which sources shape the answer
Review the official, community, and third-party sources cited by AI, then open the original answer behind each conclusion.
Data source: Community Edition generates results with the provider API you configure. Every conclusion links back to the question, model answer, and citation sources behind it.
## A report founders can actually read
NiubiGEO does not require you to understand a pile of GEO metrics. The report answers plain business questions:
Summary ├── Does AI recognize your product? ├── How does AI describe your brand? ├── Who are the confirmed competitors? ├── Which questions surface competitors more often? ├── Which important questions miss your brand? └── Which sources support these conclusions?
The main report stays focused on readable conclusions. Full AI answers are collapsed by default and can be opened when you want to inspect the evidence.
## Why open source?
We want every team to understand how they appear in AI answers at a low cost, with a way to verify every conclusion.
NiubiGEO lets you:
## 3-minute audit
### Docker
git clone https://github.com/Albert-Weasker/niubigeo.git cd niubigeo cp .env.example .env
Add at least one provider key to .env:
OPENROUTER_API_KEY= OPENAI_API_KEY= ANTHROPIC_API_KEY= GEMINI_API_KEY= PERPLEXITY_API_KEY= DEEPSEEK_API_KEY=
Start the app:
docker compose up --build
Open [http://localhost:8787](http://localhost:8787), enter a domain, confirm the brand, competitors, and questions, then run the audit.
You can also pull the published image:
docker pull ghcr.io/albert-weasker/niubigeo:v0.1.0-alpha
Run with Node.js
NiubiGEO requires Node.js 22 or newer.
git clone https://github.com/Albert-Weasker/niubigeo.git cd niubigeo cp .env.example .env npm install npm run self-check npm run server
Run from CLI
npm run audit -- \ --domain example.com \ --provider openrouter \ --models openai/gpt-4o-mini,perplexity/sonar \ --prompt-count 8
Add keywords and your own customer questions:
npm run audit -- \ --domain example.com \ --keywords "category keyword,buyer intent keyword" \ --competitors rival.com,other.com \ --prompts "What are the best tools in this category?|What are the alternatives?"
Reports are saved in the local runs/ directory by default.
## Supported providers
| Provider | Status | How it is used |
|---|---|---|
| OpenRouter | Supported | One key can run models from multiple providers; native web plugin supported |
| OpenAI | Supported | Uses the official OpenAI Responses API; native web_search supported |