Inspiration
Search is changing shape. People increasingly ask ChatGPT, Gemini, and Perplexity "what's the best CRM for startups" instead of typing it into Google — and those AI answers decide which brands even get considered. Traditional SEO tools have no visibility into this: they can't tell you whether Gemini mentioned your brand, cited a competitor instead, or got your positioning wrong. We wanted to close that gap — not just measure GEO (Generative Engine Optimization) visibility, but turn it into something a team can actually act on.
What it does
Giral asks Gemini the real questions your buyers ask, with Google Search Grounding so the answers reflect the live web. It then tracks whether your brand gets mentioned, whether your domain gets cited, and how you compare to named competitors — turning that into a weighted visibility score. A diagnosis pass explains why you're winning or losing (backed by a technical website audit covering robots.txt, schema, metadata, and page speed), and an action pass converts root causes into a prioritized, trackable to-do list of concrete fixes. Everything lives in a dashboard with historical trend charts, and projects can be scheduled to automatically re-run and re-check progress over time.
How we built it
Three cooperating Google ADK agents — Monitor, Diagnosis, and Action — each own one stage of the pipeline and hand structured output to the next. Monitor runs grounded Gemini prompts and scores mention/citation/sentiment signals; Diagnosis correlates those signals with a website audit to produce evidence-backed root causes; Action drafts prioritized fixes and content plans. A FastAPI backend orchestrates the pipeline and exposes it to a React dashboard, all packaged into a single Cloud Run service. Firestore persists runs, diagnoses, action plans, and TODO state, and a Cloud Scheduler job drives daily automatic re-runs for projects that opt in.
Challenges we ran into
Getting Gemini's grounded search results into a consistent, scoreable shape was harder than expected — the same underlying signal (a brand mention, a citation) can show up in wildly different response structures. Chaining three agents also meant designing contracts between them carefully, so a vague diagnosis wouldn't cascade into a vague, unhelpful action plan. And distinguishing genuine root causes from noisy one-off audit findings took real iteration.
Accomplishments that we're proud of
We're proud that the pipeline goes all the way from raw brand input to a specific, prioritized fix a human can execute today — not just a dashboard of numbers. The auto-rerun scheduler and trend charts turn a one-time report into an ongoing feedback loop, and the whole system runs as one lean Cloud Run service backed by Firestore, with no extra infrastructure to babysit.
What we learned
We learned how much of GEO visibility is really a technical SEO and content-structure problem in disguise — the website audit findings frequently explained diagnosis results better than raw prompt-response text did. We also learned that multi-agent pipelines are only as good as the structured handoffs between them: investing early in shared schemas paid off far more than tuning any single agent's prompt.
What's next for Giral
We want to expand beyond Gemini to compare visibility across multiple AI engines side by side, add richer competitor benchmarking over time, and let the Action agent open pull requests or CMS drafts directly instead of just describing the fix. We'd also like to support multi-user teams and Slack/email digests so priority fixes reach the right person automatically.
Log in or sign up for Devpost to join the conversation.