# PricingCited > PricingCited checks two things about a SaaS pricing page, with equal weight: whether ChatGPT, Perplexity, Gemini, Claude cite it, and whether they quote its price right. Then it says exactly what to change. A scan reads the pricing page, extracts a price sheet the company confirms, asks every engine 50 buyer prompts (direct price, plan detail, comparison, alternatives, fit) 2 times each, checks every price claim against the sheet, and scores the page 0–100: 50% citation, 50% accuracy. Sample reports on well-known SaaS pricing pages are free to read. A Pricing Check of your own page costs $99, refunded if it finds no uncited answer and no wrong price. ## For agents - [MCP server](https://www.pricingcited.com/api/mcp): Streamable HTTP. Tools: list_samples, start_pricing_check, confirm_prices, get_report, check_page, get_rubric. Prompt: fix_my_pricing_page. - [OpenAPI spec](https://www.pricingcited.com/openapi.json): the same capabilities over REST. - [Agent guide](https://www.pricingcited.com/agents): setup for Claude Code, Cursor, Claude Desktop and plain HTTP. - Reports are Markdown at https://www.pricingcited.com/r/{id}/report.md, or send `Accept: text/markdown` to https://www.pricingcited.com/api/audits/{id}. ## API - [POST /api/checkout](https://www.pricingcited.com/openapi.json): get a Stripe checkout link for a Pricing Check. Body: {"url": "https://acme.com/pricing", "brand"?: string, "competitors"?: string[]}. After payment the buyer lands on their report. - [GET /api/audits/{id}](https://www.pricingcited.com/openapi.json): progress, the extracted price sheet, results. - [POST /api/audits/{id}/confirm](https://www.pricingcited.com/openapi.json): confirm or correct the price sheet and run the engines. Body: {"sheet"?: PriceSheet}. - [GET /api/check?url=](https://www.pricingcited.com/api/check?url=https://vercel.com/pricing): instant readiness checks, no AI calls. ## Optional - [Full reference with the page-fix rubric](https://www.pricingcited.com/llms-full.txt) - [Pricing](https://www.pricingcited.com/pricing): Pricing Check $99 once; Solo $79/month or $790/year (waitlist); sample reports free. ## The page-fix rubric Every page fix in a report maps to one of these rules. 1. **Prices as plain text** (`html-prices`): Every price is plain HTML text, not only inside images, JavaScript toggles or client-side widgets. Test: Does every plan's price appear in the raw HTML? 2. **Monthly and annual, in words** (`both-billing`): Monthly and annual prices are both stated in a sentence, e.g. "$12 per seat per month, or $10 billed annually". Test: Could an engine quote either price without guessing which billing period it belongs to? 3. **Pricing last updated** (`last-updated`): A visible "Pricing last updated: " line, with dateModified in JSON-LD to match. Engines prefer sources that look current. Test: Can a reader tell these prices are true this month? 4. **Who each plan is for** (`plan-fit`): One short sentence per plan answering "who is this for", in the words buyers type (team size, use case). Test: Does the page contain the words of a prompt like "best X for a 5-person team"? 5. **FAQ for the prompts that failed** (`faq`): An FAQ answering the exact prompts that came back wrong or vague (free plan? per seat? trial?), each answered in its first sentence. Test: For each failed prompt, is there a question on the page that is essentially that prompt? 6. **Product and Offer schema** (`offer-schema`): Product or SoftwareApplication JSON-LD with an Offer per plan, carrying price and priceCurrency that match the visible prices. Test: Would a parser that ignores CSS and JavaScript get the same prices? 7. **Your own comparison** (`comparison`): A comparison block on the page, or links to your own /vs pages, so "X vs Y pricing" prompts have a source on your domain. Test: When a buyer asks "{brand} vs {competitor} pricing", is there a sentence on your domain to cite? ## How a scan works 1. Read the pricing page as a crawler does: raw HTML, no JavaScript. Extract a price sheet: plans, monthly and annual price, currency, billing unit, free plan, trial, key limits. 2. The company confirms or corrects the sheet. It's the ground truth every answer is judged against. 3. Draft 50 buyer prompts across five families and ask every engine with web search on, 2 runs each. Runs that disagree are flagged as inconsistent. 4. From each answer, extract the price claims about the brand and the cited URLs. Prices are normalised (annual vs monthly, currency) and allowed ±1 unit of rounding. 5. Each answer gets a status: Correct, Right but from someone else's page, Vague, Wrong, or Invisible. 6. Show the two failures side by side, Not cited and Wrong price, then source fixes (where AI looked instead) and page fixes (ranked edits to the pricing page). ## Engines - ChatGPT: openai/gpt-5.4-nano via Vercel AI Gateway with the provider's own web search - Perplexity: perplexity/sonar via Vercel AI Gateway with the provider's own web search - Gemini: google/gemini-3.1-flash-lite via Vercel AI Gateway with the provider's own web search - Claude: anthropic/claude-haiku-5.5 via Vercel AI Gateway with the provider's own web search API answers approximate what the consumer apps show. They differ by account, location and day, so a trend over weeks means more than one run.