GEOInflow
Intro
GEOInflow is a self-hosted web and AI-crawler analytics tool built for GEO (Generative Engine Optimization). It is jointly published by 猎看科技 (Liekan Technology) · 北京日报社智源GEO (Beijing Daily Zhiyuan GEO) and open-sourced under MIT on GitHub at yaojingang/GEOInflow (TypeScript).
It brings website visitors, AI search referrals, server crawl logs and content inventories into one site context so teams can see which AI crawlers visit, which pages they request, which important pages are never crawled, where requests fail, and how many visitors and conversions AI search brings.
The repo was created on October 26, 2026 and gathered about 276 stars and 46 forks on its first day. The current product version is v1.2 (build 1.2.0).
Explain
Questions it answers
| Question | Data |
|---|---|
| Which AI platforms visit the site? | crawler identity, purpose, provider, volume, verification status, trends |
| Which pages are crawled repeatedly? | page rankings, repeat requests, directory distribution, recent activity |
| Have important pages been crawled? | import sitemap / CSV / JSON inventories and compare with logs |
| Are crawler requests succeeding? | HTTP status, GET / HEAD, caching, latency, errors, risk signals |
| What does AI search bring? | AI referral sessions, landing pages, goals and conversions |
AI crawler analytics
- The built-in catalog covers OpenAI, Anthropic, Perplexity, Google, Microsoft, ByteDance, Baidu, Kimi, Tencent Hunyuan and more, separating purposes such as training, AI search and user-triggered access
- Declared User-Agents, official IP-range matches and DNS / trusted-edge evidence are stored separately; a User-Agent claim alone does not confirm a source
- Export robots / Nginx access policies; some Cloudflare controls can be applied after a preview and explicit confirmation
- The project stresses that crawl logs prove access only; indexing, training, citations and customer acquisition each need their own evidence
Web analytics
PV / UV, visits, referrers, geography and devices; custom events, goals, funnels and attribution; UTM, heatmaps and retention; team spaces, permissions, dashboards and public sharing; CSV / JSON / ZIP exports; an optional AI assistant that is off by default. The UI supports Simplified Chinese and English, with Asia/Shanghai as the default timezone.
Architecture
Browser script + server / CDN logs + content inventories → app and ingestion APIs → PostgreSQL, with log and analytics workers pre-aggregating results and Redis caching, feeding GEO, visitor and content reports.
Usage
Quick deploy (Docker)
With Docker Engine / Docker Desktop and Docker Compose V2 running, from the project root:
sh scripts/liekan-deploy.sh
The script generates a private .env and random secrets, builds the image, runs migrations and starts the app, log worker, analytics worker, PostgreSQL and Redis. Default address: http://127.0.0.1:3002.
- A fresh install signs in as
admin/liekan; change the password right after signing in - Load the bundled demo data:
docker compose -f docker-compose.liekan.yml exec app node scripts/liekan-seed-demo.mjs
- Production needs a domain, HTTPS and a trusted reverse proxy; identity metrics like UV depend on trusted IP ingress
- Connect server / CDN logs to see crawlers that never run the browser script
Who it's for
- Company sites, content sites, publishers and developer docs that want visibility into AI crawlers and AI search traffic
- GEO teams managing several sites