
What Is NiubiGEO?
NiubiGEO is an open-source, self-hosted tool for auditing how AI systems understand and recommend a product. You enter a domain, review the detected brand information and customer questions, choose a configured AI provider, and generate a readable report about your brand’s visibility.

Unlike tools that reduce visibility to an unexplained score, NiubiGEO keeps the evidence accessible. Its conclusions link back to the test question, the original model answer, and any citation sources returned by the provider.
NiubiGEO Community Edition uses provider APIs. It does not reproduce results from consumer interfaces such as the public ChatGPT, Claude, Gemini, or Perplexity websites.
What an Audit Shows
A NiubiGEO audit is designed to answer practical business questions rather than present a large collection of abstract GEO metrics.
- Brand recognition: Determine whether selected models recognize your product and how they describe it.
- Competitor discovery: See which products appear when a customer asks category, comparison, or recommendation questions.
- Visibility gaps: Identify relevant questions where competitors appear but your brand does not.
- Source analysis: Review official, community, and third-party sources that influence an answer.
- Evidence inspection: Open the original AI response supporting each report conclusion.
The project distinguishes confirmed competitors from names that may only be loosely related. It also lets you review and edit questions before provider calls are made.
Key Features
- Open-source Community Edition licensed under Apache-2.0.
- Free self-hosting with your own provider API keys.
- Support for multiple AI providers and models.
- Brand, alias, category, keyword, and competitor discovery.
- Question confirmation before an audit runs.
- Analysis of recommendations and provider-returned citations.
- Reports traceable to their underlying questions and answers.
- English and Simplified Chinese interfaces, prompts, analysis, and reports.
Supported providers
NiubiGEO supports OpenRouter, OpenAI, Anthropic, Google Gemini, Perplexity, DeepSeek, and OpenAI-compatible APIs. Depending on the provider, it can use native web search, search grounding, web-grounded answers, or citations returned by the provider.
An OpenRouter key can access models from multiple providers, but resulting requests are still labeled as OpenRouter API results. Provider credentials remain separate: an OpenAI key calls OpenAI, while a Gemini key calls Gemini.
Prerequisites
The quickest installation method uses Docker and Docker Compose. You will also need at least one supported provider API key. If you prefer to run the source directly, install Node.js 22 or newer.
- Git
- Docker with Docker Compose, or Node.js 22+
- An API key for at least one supported provider
- A domain or product page to audit
Install NiubiGEO with Docker
1. Clone the repository
git clone https://github.com/Albert-Weasker/niubigeo.git
cd niubigeo
cp .env.example .env2. Add a provider key
Open .env and add at least one valid API key. You do not need to configure every provider.
OPENROUTER_API_KEY=
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
GEMINI_API_KEY=
PERPLEXITY_API_KEY=
DEEPSEEK_API_KEY=For example, if you plan to use OpenAI, populate OPENAI_API_KEY and leave unused provider entries empty.
3. Build and start the application
docker compose up --buildWhen the service is ready, open http://localhost:8787 in your browser.
Using the published container image
A prebuilt alpha image is available from GitHub Container Registry:
docker pull ghcr.io/albert-weasker/niubigeo:v0.1.0-alphaYou can also pull the image tagged latest:
docker pull ghcr.io/albert-weasker/niubigeo:latestInstall with Node.js
If you want to run the project without Docker, verify that Node.js 22 or newer is installed. Then clone the repository, create the environment file, install dependencies, run the self-check, and start the server.
git clone https://github.com/Albert-Weasker/niubigeo.git
cd niubigeo
cp .env.example .env
npm install
npm run self-check
npm run serverAdd a provider key to .env before attempting an audit. Without a configured key, NiubiGEO cannot produce real AI visibility results.
Run Your First Audit in the Web Interface
- Enter a domain: Provide your company domain or a relevant product page.
- Review discovery results: NiubiGEO identifies the brand, aliases, category, keywords, and possible competitors.
- Confirm the entities: Correct the brand information and distinguish real competitors from unrelated names.
- Review the questions: Edit the proposed customer questions before any provider request is sent.
- Run the audit: NiubiGEO calls the selected provider API and analyzes its answers and returned sources.
- Read the report: Examine brand recognition, competitor appearances, missing-brand questions, and supporting evidence.
The main report emphasizes concise conclusions. Full AI answers are collapsed by default, so you can expand them only when you need to verify the evidence.
Run an Audit from the Command Line
The CLI is useful for repeatable local tests and scripted workflows. The following example audits example.com through OpenRouter, uses two models, and generates eight prompts:
npm run audit -- \
--domain example.com \
--provider openrouter \
--models openai/gpt-4o-mini,perplexity/sonar \
--prompt-count 8Replace the domain, provider, and model identifiers with values appropriate for your audit and configured credentials.
Add keywords, competitors, and custom questions
You can guide the audit with category keywords, known competitors, and customer questions. Separate keywords and competitors with commas. Separate custom prompts with a vertical bar.
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?"By default, generated reports are stored in the local runs/ directory.
How to Interpret the Report
Check brand recognition first
Look for whether the model identifies the product correctly, which category it assigns, and which important capabilities it omits. Recognition alone does not mean the model understands the brand’s positioning accurately.
Review confirmed competitors
Pay attention to competitors that repeatedly appear in recommendation or alternative questions. NiubiGEO separates confirmed competitors from possibly related brands, helping you avoid treating every mentioned company as a direct rival.
Find questions where your brand is absent
A useful visibility gap is a relevant customer question where competing products are recommended but your brand is missing. These gaps can reveal where the AI lacks information about your positioning or does not associate your product with a particular use case.
Inspect sources and original answers
Open the evidence behind important conclusions. Determine whether the answer relies on your official site, community discussions, or third-party pages. Citations are limited to sources returned by the provider or explicitly present in the AI answer.
Advanced Tips for Better Audits
Use questions that reflect buyer intent
Generic prompts may not reveal the most useful competitive gaps. Add questions customers actually ask, such as category recommendations, alternatives, comparisons, and use-case-specific requests. Always review generated questions before starting the provider calls.
Test more than one model or provider
Different models can recognize brands, recommend competitors, and return sources differently. Multi-provider audits help you observe these differences, but results should not be treated as directly equivalent to consumer product interfaces.
Keep audit conditions consistent
AI output is stochastic, so one run is not a permanent ranking. When evaluating changes, preserve the domain, questions, provider, models, language, and other audit conditions as closely as possible. Formal report comparison under identical conditions is listed as a planned feature rather than a current capability.
Choose the correct language
NiubiGEO supports English and Simplified Chinese. The selected language affects the interface, generated monitoring questions, provider prompts, brand and competitor analysis, and final report. Use the language that matches the audience whose experience you want to investigate.
Understand API result boundaries
Provider API answers can differ from responses displayed in consumer web applications. Community Edition does not simulate regional users or consumer web interfaces. Human testing, screenshots, regional checks, and complete consumer evidence packages belong to the separate managed service described by the project.
Protect credentials and report data
Never commit .env, provider keys, private prompts, customer reports, or sensitive files from runs/ to source control. The project recommends reporting security issues privately through its security policy.
Current Project Status
NiubiGEO is currently v0.1.0-alpha. Its core audit workflow works, but interfaces, report rules, and data structures may change.
Current capabilities include multi-provider audits, pre-audit question confirmation, brand and competitor discovery, source filtering, traceable reports, and bilingual support. Scheduled monitoring, report comparison, report export packages, a provider plugin SDK, and additional providers are planned rather than currently available.
When to Use NiubiGEO
NiubiGEO is a strong fit when you want an open-source audit, control over the models and questions, self-hosted execution, and direct access to the evidence behind every conclusion. Commercial platforms may be more appropriate when you need hosted infrastructure, proprietary datasets, scheduled reporting, mature team workflows, or broader marketing integrations.
Conclusion
NiubiGEO provides a transparent way to investigate whether AI systems know your product, how they describe it, which competitors they recommend, and which sources influence their answers. Start with Docker or Node.js, connect one supported provider, carefully review your questions, and use the report’s evidence links to turn AI visibility findings into verifiable observations.
For updates, source code, and contribution instructions, visit the NiubiGEO GitHub repository.
