Skip to content
 
 

Repository files navigation

Elmo

Open source AI visibility tracking and optimization.

Learn more »


Docs  Demo  Issues  Roadmap  Discord


About

Elmo is an open-source, self-hosted platform for optimizing your AI visibility, which is also known as:

  • Answer Engine Optimization (AEO)
  • Generative Engine Optimization (GEO)
  • LLM Optimization (LLMO, which is where the name Elmo is from)

Elmo tracks how AI answer engines like ChatGPT, Claude, Perplexity, Gemini, and Google AI Overviews mention, cite, and describe your brand, so you can benchmark competitors and grow your visibility in AI answers.

It's a free alternative to tools like Profound, Peec, and Otterly. You can run it on your own infrastructure, own your data, and audit exactly how every metric is calculated.

Demo

Try the live demo at demo.elmohq.com to see how Elmo tracks prompts and analyzes citations.

Screenshots

Dashboard overview Visibility tracking
Elmo dashboard showing visibility score, tracked prompts, and trend charts Per-prompt AI visibility scores and trends across answer engines
Share of voice Citation analysis
Competitor share of voice leaderboard and trend over time Domains and URLs cited by AI answer engines, grouped by category
Query fan-out Opportunities
Web searches AI engines ran while grounding answers to tracked prompts Generated recommendations for earning more AI citations

What Elmo Tracks

  • Visibility scoring — For every tracked prompt, Elmo measures how often each AI answer engine mentions your brand and trends the score over time, per prompt and per model.
  • Brand mention tracking — Each answer is checked for your brand name, aliases, and domains, so mentions are counted the same way every time, across every engine.
  • Citation analysis — Every URL an engine cites is stored with its domain and position, then categorized: your own domains, competitor domains, social media, Google properties, and institutional sources. You see which pages AI models actually trust for your industry.
  • Competitor benchmarking and share of voice — A leaderboard of competitor mention rates next to your own, with your overall share of voice and how it moves over time.
  • Query fan-out analysis — When an answer engine grounds a response, it often runs several web searches first. Elmo records those searches, shows how engines rewrite your wording (which words they add, drop, or keep), and which searches your content wins or misses.
  • Prompt management — An onboarding wizard analyzes your website, then suggests keywords, competitors, buyer personas, and tracking prompts. You can also add prompts manually, tag them, and enable or disable them individually.
  • Opportunities — Elmo turns your tracked visibility and citation data into a prioritized, regularly refreshed list of what to create, pitch, and seed to earn more AI citations.
  • Reports — Shareable AI visibility reports (visibility summary, per-prompt breakdown, citation analysis, competitor comparison) viewable by stakeholders without an Elmo account.
  • REST API — Manage brands, prompts, and competitors and pull analytics snapshots and reports programmatically. See the API reference.

How Elmo Measures AI Visibility

Elmo's methodology is simple and fully inspectable in this repository:

  1. Prompts are defined per brand — either generated by the onboarding wizard from your website or written by hand. Each prompt is a question a potential customer might ask an AI assistant.
  2. A background worker runs each prompt on a schedule (several times a day by default) against every engine you configure. Scraping providers capture the real consumer surfaces — ChatGPT, Google AI Mode, Google AI Overviews, Gemini, Perplexity, and Microsoft Copilot — while direct model APIs (OpenAI, Anthropic, Mistral, OpenRouter) add coverage for Claude, Grok, and other models with web search enabled. The providers guide compares both approaches and their costs.
  3. Every answer is normalized and parsed. Each run produces the answer text, the list of cited URLs, the web searches the engine ran while grounding (its query fan-out), and the model version. The text is scanned for your brand's name, aliases, and domains, and for each competitor's.
  4. Everything is stored in PostgreSQL, including the raw engine output, so any metric can be re-derived and audited later. Nothing is a black box: the mention detection, scoring, and aggregation code is all in this repo.
  5. Metrics are aggregated into trends. Visibility is the share of runs that mention your brand; share of voice compares your mention rate against competitors; citation counts roll up by URL, domain, and category — each filterable by prompt, tag, engine, and time range.

Because Elmo is open source, this loop is the part you never have to take on faith. Answer Engine Optimization (AEO) tooling lives or dies on measurement quality, and Elmo's measurements are ones you can read, run, and verify.

Elmo vs. Closed-Source Alternatives

Most AI visibility platforms are closed SaaS. Here is how Elmo compares to the widely used ones:

Tool Open source Self-hostable Auditable metrics Data ownership Pricing model Engine coverage
Elmo Yes (MIT) Yes (Docker Compose) Yes — scoring code is public Yours — your own PostgreSQL Free self-hosted; cloud from $29/mo ChatGPT, Google AI Mode, Google AI Overviews, Gemini, Perplexity, Copilot, Claude, Grok, Mistral, and more
Profound No No No — proprietary scoring Vendor-hosted Enterprise, custom pricing Multiple engines, plus AI crawler analytics
Peec AI No No No Vendor-hosted Paid subscription, custom pricing Multiple engines
Otterly AI No No No Vendor-hosted Paid subscription, custom pricing Multiple engines, plus on-page GEO audits
Scrunch No No No Vendor-hosted Enterprise, custom pricing Multiple engines; content-optimization focus
Ahrefs Brand Radar No No No Vendor-hosted From $129/mo Multiple engines, tied to Ahrefs' SEO dataset
Semrush AI Toolkit No No No Vendor-hosted From $139.95/mo Multiple engines, tied to Semrush's SEO platform
HubSpot AEO Grader No No No Vendor-hosted Free One-time website audit, not continuous tracking

To be fair about where the closed tools are genuinely ahead: Profound, Peec AI, Ahrefs, and Semrush offer prompt volume estimates; Peec AI, Ahrefs, and Semrush include sentiment analysis; Profound, Otterly, and Scrunch analyze AI crawler behavior; Otterly, Scrunch, and HubSpot audit and optimize on-page content; and Ahrefs and Semrush integrate AI tracking with established SEO datasets. Elmo doesn't do those things today — see the roadmap for what's planned. What none of them offer is the ability to read the code behind every number, run it on your own infrastructure, and keep the data.

Elmo also maintains a directory of 100+ Answer Engine Optimization and Generative Engine Optimization tools with feature matrices and head-to-head comparisons: AI Visibility Tool Directory.

Who Elmo Is For

  • Self-hosting teams who want AI visibility data inside their own infrastructure — your prompts, your competitors, and every raw engine response stay in a PostgreSQL database you control.
  • Agencies offering Answer Engine Optimization to clients: the white-label deployment adds custom branding, a custom domain, and SSO on top of multi-brand tracking.
  • Developers and analysts who want auditable metrics — a REST API, a documented methodology, and a database you can query directly instead of a dashboard-only black box.
  • Anyone priced out of enterprise AEO platforms who still needs credible measurement of how ChatGPT, Perplexity, Gemini, and Google AI Overviews talk about their brand.

Quick Start

Tip

Would rather not self-host? Elmo Cloud runs the same open-source platform for you, with managed hosting and automatic updates, from $29/mo. Start with Cloud →

For local deployments, use Docker Compose as configured with the @elmohq/cli package:

# Install the CLI globally
npm install -g @elmohq/cli

# Initialize configuration (interactive wizard)
elmo init

# Start the stack
elmo compose up -d

Once the services report healthy, open http://localhost:1515 and create your account. The full walkthrough is in the getting started guide.

Tip

Watch this repo's releases to get notified of major updates.

Deployment Options

Option What you get Price
Self-hosted The full platform on your own infrastructure via Docker Compose, unlimited prompts, every supported engine and provider Free (MIT)
Elmo Cloud Managed hosting with automatic updates, unlimited seats, and API access on every plan From $29/mo
White-label Everything in Cloud plus custom branding, a custom domain, and SSO — built for agencies serving multiple clients Custom

Details and plan limits are on the pricing page.

Architecture

Elmo system architecture

A web app serves the dashboard and REST API, a worker schedules and executes prompt runs against the AI engines, and PostgreSQL stores both the data and the job queue. The developer guide covers the monorepo layout and how to contribute.

Tech Stack

Documentation

Contact

License

Elmo is open source under the MIT License.

Repo Activity

Repository activity

About

Open-source Answer Engine Optimization (AEO) and Generative Engine Optimization (GEO) platform. Track how ChatGPT, Claude, Perplexity, Gemini, Copilot, Grok, and Google AI Overviews mention and cite your brand in AI search. MIT-licensed, self-hostable, every metric auditable in code.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages