# cite.me.in > Monitor your brand's visibility in AI-generated responses. Cite.me.in tracks when and where AI platforms cite your website. Think of it as Google Search Console, but for LLMs. ## What is cite.me.in? Cite.me.in monitors whether AI platforms cite your domain in their answers. We run queries across Claude, ChatGPT, Gemini, and Copilot with web search enabled, record which URLs appear in responses, and track how your visibility changes over time. Answering questions like: "Which AI platforms mention my site?", "What queries trigger citations of my content?", "Who are my competitors in AI search?", "Is my AI visibility growing or shrinking?" ## How to try it (free, no account) Go to [/try](/try) and enter any website URL. We run 13 AI legibility checks — sitemaps, robots.txt, JSON-LD, meta tags, content quality, and more — showing which checks pass and fail with explanations. No sign-up required. After your scan, [sign up](/sign-up) for 25 days free to get weekly monitoring across all platforms. ## How it works 1. [Sign up](/sign-up) for free (25 days, no credit card) 2. Add your domain — we read your content and auto-suggest 9 queries across three categories: discovery, active search, and comparison 3. Queries run once per platform per day via official APIs with web search enabled 4. Every URL cited in responses is recorded — you see which platforms cite you, for which queries, and at what position 5. Brand sentiment is analyzed per run (positive, negative, neutral, mixed) You have full control over queries — add, edit, delete, and organize into named groups. See the [dashboard](/sites) for your citation data. ## Benefits Answering "Why should I use cite.me.in?": - **Know where you stand** — see which AI platforms cite your domain and which queries trigger citations. [Pricing page](/pricing) - **Track trends** — daily snapshots build a visibility trend from day one. [Dashboard](/sites) - **Discover competitors** — see which other domains appear alongside you in AI responses. [Dashboard](/sites) - **Auto-suggested queries** — we read your site and generate 9 relevant queries. [How it works](#how-it-works) - **[Free AI legibility scan](/try)** — check if AI agents can find, trust, and cite your content. No account needed. - **[API access](/docs)** — REST API with Bearer token authentication, OpenAPI 3.1 spec - **Email digests** — notifications when citation patterns change (Pro plan) - **Bot traffic analytics** — see which AI crawlers visit your site ## Supported platforms - [Claude](https://claude.ai) (Anthropic) — daily queries with web search - [ChatGPT](https://chatgpt.com) (OpenAI) — daily queries with web search - [Gemini](https://gemini.google.com) (Google) — daily queries with web search - [Copilot](https://copilot.microsoft.com) — daily queries with web search All four queried in parallel per monitoring run. Skip a platform if a run already exists within 24 hours. ## Key metrics Answering "What data does cite.me.in show?": - **Visibility score** (0-100) — composite of query coverage (35%), position-weighted citation rank (30%), share of voice (20%), mention rate (15%) - **All citations** — total URLs cited across all queries (current vs previous week) - **Your citations** — how many times your domain appears (current vs previous week) - **Query coverage rate** — percentage of queries where your domain appears in citations ## Pricing Answering "How much does cite.me.in cost?": - **[Free Trial](/sign-up)** — $0 for 25 days, no credit card, 1 domain, all platforms. Most tools give a week; we give enough time to actually see results. - **[Pro](/pricing)** — $35/month or $320/year (save $100), up to 5 sites, unlimited daily runs, full citation history, API, email digests, benchmarks. Cancel anytime. - **Custom** — unlimited sites, priority support — for agencies ## FAQ ### What counts as a citation? Any URL that appears in an AI platform's response to a query. We record the full list of cited URLs and check whether your domain appears and at what position. ### How is the visibility score calculated? Composite: query coverage (35%), position-weighted citation rank (30%), share of voice (20%), mention rate (15%). ### Do I have to write my own queries? No. When you add a site, we read your content and automatically suggest 9 queries across discovery, active search, and comparison. Use them as-is, edit, or add your own. ### How far back does historical data go? From day one of monitoring. No backfill, but trends build automatically with daily runs. ### What if a platform cites no URLs? We record the result anyway. A zero-citation response is meaningful — the platform answered without external sources. ### Why pay when it's open-source? Self-hosting means managing uptime, updates, and LLM API keys. $35/mo handles all that plus aggregate benchmark data that self-hosting can't provide. ### Can I cancel? Yes — from your billing portal. No commitment, no fee. Data stays accessible until end of billing period. ## API Answering "How do I integrate cite.me.in programmatically?": REST API with Bearer token authentication. Full [OpenAPI 3.1 spec](/docs). Key endpoints: - `GET /api/me` — authenticated user details with sites - `GET /api/user/{id}` — user details (own user only) - `GET /api/site/{domain}` — site details with users and roles - `GET /api/site/{domain}/metrics` — citation metrics (current vs previous week) - `GET /api/site/{domain}/queries` — queries, citations, and sentiment per platform ## Who it's for - **Solo founders** — know if AI platforms send you traffic or ignore you - **Small businesses** — find out if ChatGPT and Copilot mention you - **Marketing teams** — track AI citation visibility as a channel, compare platforms - **Agencies** — monitor multiple client domains from one account - **Anyone** — try the [free AI legibility scan](/try) without signing up ## Open source [Source code on GitHub](https://github.com/cite-me-in/cite.me.in). Self-hostable, but the hosted version handles uptime, updates, and LLM API keys, plus provides aggregate benchmark data. ## Pages - [/](/): Landing page with overview, feature highlights, testimonials, pricing comparison, and CTA to sign up or try the free scan - [/try](/try): Free AI legibility scan — enter any URL, get 13 checks with pass/fail results and explanations. No account needed. - [/pricing](/pricing): Plan comparison — Free Trial (25 days), Pro ($35/mo), Custom. Features per tier, FAQ about billing and switching plans - [/sign-up](/sign-up): Create account — email, name, password. 25-day free trial, no credit card - [/sign-in](/sign-in): Sign in with email and password - [/faq](/faq): Full FAQ covering getting started, how it works, platforms, data, pricing, account management - [/docs](/docs): API documentation with OpenAPI 3.1 spec — authentication, endpoints, rate limits, code examples - [/about](/about): About cite.me.in — mission, team, story # [/privacy](/privacy): Privacy policy — data collection, cookies, third-party services, GDPR/CCPA rights # [/terms](/terms): Terms of service — account terms, acceptable use, payment terms, limitation of liability - [/blog](https://blog.cite.me.in): Product updates, guides on AI visibility, industry analysis ## Links - [Blog](https://blog.cite.me.in) — Updates and insights - [GitHub](https://github.com/cite-me-in/cite.me.in) — Source code - [/try](/try) — Free AI legibility scan # Privacy Policy # Privacy Policy ## What we collect - Email address and password (encrypted) when you create an account - The domains and search queries you configure for monitoring - Usage data and analytics to improve the service ## How we use it We use your data to run citation visibility queries on your behalf, send service-related notices, and improve the product. We do not sell your personal information. ## AI platform queries To monitor citation visibility, we submit your configured search queries to third-party AI platforms — including Anthropic Claude, OpenAI ChatGPT, Google Gemini, and Perplexity. We store the results to provide you with historical data. ## Sharing We share data only with service providers acting on our behalf (hosting, analytics, error tracking), when required by law, or in connection with a merger or acquisition. ## Cookies We use cookies to maintain your session, analyze usage patterns, and track marketing attribution. ## Security We use industry-standard security practices including encryption in transit and at rest, and secure password hashing. ## Your rights You may request access to, correction of, or deletion of your personal data at any time. To exercise these rights, email [privacy@cite.me.in](mailto:privacy@cite.me.in). ## Data retention We retain your data for as long as your account is active. When you delete your account, your data is deleted within 30 days except where retention is required by law. ## Children This service is not intended for children under 13. We do not knowingly collect data from children under 13. ## Changes We may update this policy at any time. Continued use of the service after changes are posted constitutes acceptance of the updated policy. ## Contact [privacy@cite.me.in](mailto:privacy@cite.me.in) _Last updated: March 2026_ # Terms of Service # Terms of Service By using Cite.me.in you agree to these terms. ## Use Use the service lawfully. You are responsible for your account and everything done under it. Don't attempt to interfere with or abuse the service. ## What we provide Cite.me.in monitors AI platform citations for your domain. Data is collected on a best-effort basis — we make no guarantees about accuracy, completeness, uptime, or continuity of the service. ## Payments Paid plans are billed monthly or annually and renew automatically. You can cancel at any time; your plan stays active until the end of the billing period. All payments are final — we do not offer refunds. ## Termination We may suspend or terminate your account at any time. On termination, your data is deleted within 30 days. ## Liability The service is provided as-is. We are not liable for any damages arising from your use of it. ## Changes We may update these terms at any time. Continued use of the service after changes are posted constitutes acceptance of the new terms. ## Governing law These terms are governed by the laws of the State of California. ## Contact [legal@cite.me.in](mailto:legal@cite.me.in) _Last updated: March 2026_ # API Documentation # cite.me.in API Monitor your brand's visibility in AI-generated responses. Authenticate with your API key from the profile page. See the [documentation](https://cite.me.in/docs) for more information. ## Authentication All endpoints require a Bearer token in the `Authorization` header: ``` Authorization: Bearer YOUR_API_KEY ``` Retrieve your API key from your [profile page](/profile). ### GET /api/me Responds with the details of the authenticated user. Includes all the sites they have access to. #### Response: 200 | Field | Type | Description | | --- | --- | --- | | `email` | ``string`` | The email address of the user | | `id` | ``string`` | The ID of the user | | `plan` | ``string`` | The plan of the user e.g. `trial`, `paid`, `gratis`, `cancelled` | | `sites[].createdAt` | ``string`` | The date the site was created e.g. `2024-01-01` | | `sites[].domain` | ``string`` | The domain of the site e.g. `example.com` | | `sites[].summary` | ``string`` | The summary of the site e.g. `This product is fantastic` | #### Status Codes | Code | Meaning | | --- | --- | | 200 | User details with sites | | 401 | Unauthorized | | 404 | User not found | #### Example ```js const response = await fetch("https://cite.me.in/api/me", { headers: { Authorization: "Bearer YOUR_API_KEY" } }); const data = await response.json(); ``` ### GET /api/user/{id} Responds with the details of the given user. Includes all the sites they have access to. You can only use this endpoint with your own user ID. #### Path Parameters | Parameter | Type | Description | | --- | --- | --- | | `id` | `string` | The ID of the user to get details for e.g. `clxyz123abc` | #### Response: 200 | Field | Type | Description | | --- | --- | --- | | `email` | ``string`` | The email address of the user | | `id` | ``string`` | The ID of the user | | `plan` | ``string`` | The plan of the user e.g. `trial`, `paid`, `gratis`, `cancelled` | | `sites[].createdAt` | ``string`` | The date the site was created e.g. `2024-01-01` | | `sites[].domain` | ``string`` | The domain of the site e.g. `example.com` | | `sites[].summary` | ``string`` | The summary of the site e.g. `This product is fantastic` | #### Status Codes | Code | Meaning | | --- | --- | | 200 | User details with sites | | 401 | Unauthorized | | 404 | User not found | #### Example ```js const response = await fetch("https://cite.me.in/api/user/{id}", { headers: { Authorization: "Bearer YOUR_API_KEY" } }); const data = await response.json(); ``` ### GET /api/site/{domain} Responds with the details of the given site. Includes the content of the site, the summary, the date the site was added, and the users who have access to that site and their roles (owner or member). #### Path Parameters | Parameter | Type | Description | | --- | --- | --- | | `domain` | `string` | The domain of the site to get queries for e.g. `example.com` | #### Response: 200 | Field | Type | Description | | --- | --- | --- | | `createdAt` | ``string`` | The date the site was created e.g. `2024-01-01` | | `domain` | ``string`` | The domain of the site e.g. `example.com` | | `summary` | ``string`` | The summary of the site e.g. `This product is fantastic` | | `users[].email` | ``string`` | The email address of the user e.g. `user@example.com` | | `users[].id` | ``string`` | The ID of the user | | `users[].role` | ``string`` | The role of the user on the site e.g. `owner` or `member` | #### Status Codes | Code | Meaning | | --- | --- | | 200 | Site details with users | | 401 | Unauthorized | | 404 | Domain not recognised or not found | #### Example ```js const response = await fetch("https://cite.me.in/api/site/example.com", { headers: { Authorization: "Bearer YOUR_API_KEY" } }); const data = await response.json(); ``` ### GET /api/site/{domain}/metrics Responds with the metrics for the given site. Overall citations, your citations, visibility score, and query coverage rate. For each metric includes value for the current week and for the previous week. #### Path Parameters | Parameter | Type | Description | | --- | --- | --- | | `domain` | `string` | The domain of the site to get metrics for e.g. `example.com` | #### Response: 200 | Field | Type | Description | | --- | --- | --- | | `allCitations.current` | ``integer`` | Total citations for the current week | | `allCitations.previous` | ``number`` | Total citations for the previous week | | `queryCoverageRate.current` | ``number`` | Percentage of queries where domain appears in citations for the current week (0-100) | | `queryCoverageRate.previous` | ``number`` | Percentage of queries where domain appears in citations for the previous week (0-100) | | `visbilityScore.current` | ``number`` | LLM visibility score for the current week | | `visbilityScore.previous` | ``number`` | LLM visibility score for the previous week | | `yourCitations.current` | ``number`` | Your citations only for the current week | | `yourCitations.previous` | ``number`` | Your citations only for the previous week | #### Status Codes | Code | Meaning | | --- | --- | | 200 | Queries for the site | | 401 | Unauthorized | | 404 | Domain not recognised or not found | #### Example ```js const response = await fetch("https://cite.me.in/api/site/example.com/metrics", { headers: { Authorization: "Bearer YOUR_API_KEY" } }); const data = await response.json(); ``` ### GET /api/site/{domain}/queries Responds with the queries for the given site. For each platform list all the queries run against that platform, the citations found, and the platform sentiment. #### Path Parameters | Parameter | Type | Description | | --- | --- | --- | | `domain` | `string` | The domain of the site to get queries for e.g. `example.com` | #### Response: 200 | Field | Type | Description | | --- | --- | --- | | `platforms[].model` | ``string`` | The model used for the queries e.g. `gpt-5-chat-latest` | | `platforms[].onDate` | ``string`` | The date these queries were inspected e.g. `2024-01-01` | | `platforms[].platform` | ``string`` | The platform used for the queries e.g. `chatgpt` | | `platforms[].queries[].citations[].reason` | ``string`` | Explanation of the classification | | `platforms[].queries[].citations[].relationship` | ``string`` | Classification: direct=your domain, indirect=related content, unrelated=not relevant | | `platforms[].queries[].citations[].url` | ``string`` | The citation URL | | `platforms[].queries[].group` | ``string`` | The group this query belongs to e.g. `1. discovery` | | `platforms[].queries[].query` | ``string`` | The query itself e.g. `"What are the best retail platforms?"` | | `platforms[].queries[].response` | ``string`` | The complete response from the LLM to this query | | `platforms[].sentiment.label` | ``string`` | The overall sentiment e.g. `positive`, `negative`, `neutral`, `mixed` | | `platforms[].sentiment.summary` | ``string`` | A 2-3 sentence summary of the sentiment of the run e.g. `"Rentail.space is cited positively across multiple queries, frequently appearing as a top recommendation for finding short-term retail space. It ranks prominently in citations and is described as a reliable marketplace for pop-up and kiosk leasing."` | #### Status Codes | Code | Meaning | | --- | --- | | 200 | Queries for the site | | 401 | Unauthorized | | 404 | Domain not recognised or not found | #### Example ```js const response = await fetch("https://cite.me.in/api/site/example.com/queries", { headers: { Authorization: "Bearer YOUR_API_KEY" } }); const data = await response.json(); ```