Key takeaways
- Elmo is an MIT-licensed, self-hostable AEO tracker that covers ChatGPT, Google AI Mode, AI Overviews, Gemini, Perplexity, Copilot and Claude. Its cloud plan starts at $29/mo.
- I could not find an open-source product called "AI Monitor". Treat that name as a generic category (AI monitoring) and check which product someone means before comparing.
- Free to self-host is not free to run. You pay for LLM or scraping-provider keys plus a server and a Postgres database.
- Self-hosting makes sense for data ownership, auditable metrics and agent access. It is a poor fit if nobody on your team wants to maintain Docker and keys.
- Most of the numbers here come from the projects' own sites. Verify star counts and activity yourself before you commit.
What an open-source citation tracker actually does
A citation tracker runs a list of prompts against AI engines on a schedule, stores the raw answers, and calculates whether your brand was mentioned, cited, or missed. Open-source versions let you read the code behind each number and keep the history in your own database.
That matters because the number often ends up in a board deck or a content budget. With a closed vendor you trust the score. With open source you can check how it was computed.
One technical point separates good trackers from basic ones: query fan-out. ChatGPT rarely answers from the typed prompt alone. It runs its own web searches, and those sub-queries decide which pages get cited. Promptwatch's ChatGPT query fanout data measured the average at about 2.15 searches per response in early December 2025, falling to about 1.84 by early March 2026. A tracker that records only the typed prompt misses that layer. Elmo lists query fan-out analytics. Cited, a smaller AGPL project, does not.
The behaviour also shifts without warning. Promptwatch Data showed ChatGPT started using the site: operator at scale on August 8, 2026, jumping from about 0.4% to about 17% of fanout queries overnight. Any tracker you run has to keep up with changes like that, which is part of the upkeep you take on.
Elmo in detail

Elmo comes from elmohq and lives on GitHub under the MIT license. The repo showed 1,223 commits and activity as recent as October 29, 2026, the day before this was written. The Elmo site claims 36 releases since July 2025.
What it tracks
Elmo tracks how ChatGPT, Google AI Mode, Google AI Overviews, Gemini, Perplexity, Copilot, Claude and any OpenRouter model mention and cite your brand. It reports visibility, share of voice, sentiment, position, citations and the web searches each engine ran. It then ranks recommendations for what to fix. It does not write the content for you.
How answers are collected
This is the part people skip. Elmo does not magically see inside ChatGPT. Per cloro's write-up, you pick the data source for each engine: a scraping provider (cloro, Bright Data, Oxylabs, SearchApi, Olostep or DataForSEO) for consumer interfaces like ChatGPT, Gemini, Copilot, Perplexity, AI Mode and AI Overviews, or a model API (OpenAI, Anthropic, Mistral, OpenRouter) for Claude and others. Mention and sentiment checks also need a model key, which cloro cites the README as putting at roughly $0.15 to $0.35 per 1,000 answers.
Self-hosting setup
The self-hosted core runs on Docker Compose and PostgreSQL. Setup goes through an npm CLI: install it, run elmo init, start with Docker Compose, add provider keys, and prompts run on a schedule. A background worker runs each prompt several times a day by default and stores raw output in your own database. I did not test the setup myself, so check the docs for current requirements.
Agent and API access
Elmo has a REST API with TypeScript and Python SDKs, an MCP server and an agent skill, so Claude Code, Cursor and Codex can query your data and manage prompts. Agencies can white-label it. For technical teams this is the strongest argument for it.
What about AI Monitor?
I looked for an open-source tool called "AI Monitor" and did not find one. It may be a different product, a loose name for the category, or a hosted tool with a similar name. Before you compare anything with Elmo, pin down which product is meant, check its license, and confirm it exposes raw answers and metric code.
If you want an actual alternative, the real open-source field in October 2026 looks like this, according to cloro and Elmo's own directory:
| Tool | License | How answers are collected | Data lives in | Notes |
|---|---|---|---|---|
| Elmo | MIT | Scraping API of your choice or model APIs | Your Postgres | Fullest dashboard, REST API, MCP, cloud from $29/mo |
| Ansvisor | MIT | Collects answers through cloro | Your own setup | Most contributors per Elmo's list |
| GEO/AEO Tracker | MIT | Bright Data AI Scraper API | Browser or your Supabase | Quick check from one browser |
| OneGlanse | MIT | Your signed-in accounts in an automated browser | Your machine or server | Needs proxy and accounts, scrapers can break |
| Limelit Open | Apache-2.0 | Vendor APIs with web search, scrapers for AI Overviews | SQLite, single binary | Lightweight |
| Canonry | MIT | Model APIs | Your setup | Agent-first |
| Cited | AGPL-3.0 | DataForSEO | Your setup | Version 0.1.0, cloud from $19/mo |
Two caveats. Elmo's own site is the source for much of the comparison, so it leans in Elmo's favour. And Elmo calls its fork GetCito behind in activity, which is a competitor-adjacent claim I did not verify. [tool:ansvisor]
Why the license matters more than the feature list
Elmo, Ansvisor, Canonry and OneGlanse are MIT. Limelit is Apache-2.0. Cited is AGPL-3.0 and Gego is GPL-3.0. The AGPL means that if you run a modified version as a service, you must publish your changes. For an internal tool that is fine. For an agency reselling a modified tracker, it is a real constraint.
Open source also does not protect you from a project going closed. Elmo's directory notes that Notra took its AGPL repository private in October 2026. Prefer permissive licenses and projects with more than one active contributor.
The real cost of self-hosting
The license fee is zero. Everything else is not.
- LLM and scraping-provider API keys, billed by prompt count and run frequency
- A server or container host, plus a Postgres database
- Backups and upgrades as engines change
- Someone who notices when a scraper quietly returns garbage
That last item is the hidden one. A hosted vendor absorbs the cost of engines changing their interfaces. You absorb it when you self-host, especially with browser-based setups like OneGlanse.
A rough sanity check: Elmo Cloud from $29/mo is cheap enough that, for a small team, one afternoon of engineer time spent on setup and one on maintenance each quarter can exceed a year of subscription. Self-hosting wins when the data requirement or the customization justifies it, not on price alone.
When to self-host and when not to
| Situation | Better route | Why |
|---|---|---|
| Prompts and competitor lists must stay on your infrastructure | Self-host | Data stays in your Postgres |
| You need to audit or modify metric logic | Self-host | Scoring code is public |
| You want coding agents querying your data | Self-host or Elmo Cloud | REST API and MCP server |
| Small team, no engineer time | Elmo Cloud or a hosted tool | No upkeep, exit to self-hosting stays open |
| You resell tracking to clients | Elmo (MIT) over AGPL tools | No obligation to publish changes |
| You need to fix problems, not just see them | A platform with content and crawler tooling | Trackers stop at measurement |
My opinion: for most marketing teams the middle path is best. Start on a hosted open-source product, keep the option to leave, and only self-host once you have a concrete reason such as compliance or heavy customization.
A separate trap is treating self-hosting an LLM as the same decision. It is not. Jazz Security's October 2026 analysis argues that a self-hosted open-weight model rarely replaces an enterprise ChatGPT plan for staff work. That is a different question from self-hosting a citation tracker, which only needs a database and API keys, not GPUs.
Where open-source trackers stop
Elmo's own comparison table against Cited lists what neither offers: AI crawler analytics, shopping tracking, multi-language support and AI site audits. Elmo tells you what to change but leaves the writing and publishing to you.
That gap is where a full platform earns its price. Promptwatch tracks the real user interfaces of ChatGPT, Gemini, Perplexity and others, then adds IP-verified AI crawler logs, visitor analytics and a Content Agent that writes and publishes to your CMS. It is a paid, closed product, so you give up auditable code in exchange for the execution layer.

Other hosted trackers worth a look if you want monitoring without running anything:

For a wider list, the GEO software directory at bestgeosoftware.com and the rank-tracker directory at ai-rank-tools.com cover more options.
What to track once it is running
Whatever you deploy, a few findings from Promptwatch Data should shape your prompt set:
- ChatGPT's citation mix moves. reddit.com's share of ChatGPT citations fell from about 4% to 0.5% on August 14, 2026, so a Reddit-heavy strategy needs rechecking.
- Content type matters. Product pages were the most cited type in ChatGPT at 22.4% from Sep 28 to Oct 4, 2026.
- Citations spread widely. Almost half of ChatGPT responses cite 10 or more unique domains in that same week, so one answer can mention you without being the whole story.
Track daily at minimum, store raw responses, and compare competitors in the same prompt set.
A practical decision path
- Write down why you want open source: data ownership, auditability, agent access, or cost.
- If the reason is cost only, price a hosted plan first. Elmo Cloud at $29/mo is the cheap baseline.
- Pick the license that fits your use. MIT for flexibility, AGPL only if you accept publishing modifications.
- Choose a data source per engine and estimate monthly provider costs from your prompt count and run frequency.
- Run a two-week pilot with 20 to 50 prompts. Check that raw answers look like what you see in the real interface.
- Decide whether you also need crawler logs and content execution. If yes, a tracker alone will not cover it.
If you are choosing an SEO partner to run this alongside technical and content work, 1001 SEO Media handles GEO and AI search programs for brands.
Bottom line
Elmo is the open-source tracker to test first: permissive license, active development, the broadest dashboard and agent access. Self-host it if you have a reason beyond price and someone to keep it running. Use the cloud version if you do not. And before you compare anything against "AI Monitor", find out which product that really is.



