BigQuery has made some significant upgrades to their conversational analytics capabilities recently. Previously, I was a bit underwhelmed, but now I would consider myself whelmed, and possibly on the way to being overwhelmed 😉
The general idea is that you create an agent that interacts with a defined set of data sources and context-specific instructions, then ask it questions in plain language. Conceptually, this is a big improvement over the one-size-fits all conversational analytics features that exist in many platforms.
To test it out, I created an agent to help me analyze twooctobers.com. Below are some tips and takeaways. For a more comprehensive look, see Google’s documentation.
I chose these three because I am interested in looking for opportunities to expand and improve content on our website. At a high-level, WordPress provides the starting point, GA4 provides engagement metrics, and GSC tells me the information intent of visitors.
The setup process in BigQuery Studio is simple – you can have a functional agent going in a couple of minutes.
You can also add glossary terms, verified queries, and a couple of other settings. I started simple and left them blank.
I was able to significantly improve agent performance with this approach:
Keep refining your instructions as you use your agent.
I’ve been using Claude + MCPs a lot for data analysis, and it tends to do pretty well at exploration with limited guidance. My BigQuery agent did not do well at all. I started with a fairly broad prompt:
I’d like to find content opportunities related to AI-assisted data analysis based on organic search volume and existing site content.
And the agent floundered a bit on what data to get. It then tried to generate insights based on incomplete and/or flawed data
As I got more detailed in my prompts, it started doing a lot better. I also added some specifics on how to join data between tables to the agent instructions, which helped too. Here is an evolved version of the prompt above:
Query Search Console for pages related to AI-assisted data analysis, ranked by impression volume. For each page, retrieve the associated blog post title and content from WordPress and engagement metrics (sessions, engagement rate, average engagement time) from GA4.
Then analyze and summarize:
*Content gaps — search queries driving impressions to these pages that are not well-addressed by the current page content
*CTR opportunities — pages with strong impression volume but below-average CTR, suggesting a title or meta description improvement
*Engagement gaps — pages with solid organic traffic but low engagement, suggesting the content isn’t meeting visitor expectations
*Missing content — high-volume queries in this topic area that don’t map to any existing page
Present results as a prioritized list of recommendations, with the supporting data for each.
It still stumbled on a few queries, but overall the results were a lot better.
One feature I really love is that it shows you the queries it uses to extract data:
It’s still not perfect, but it’s pretty great.
Another feature I’m pretty excited about is the fact that any agent you publish comes with an API. I’ve been building data analysis tools with Claude, and I can see this providing a really helpful interpretive layer between my tools and raw BigQuery data.
BigQuery has made some nice improvements since releasing Agents a couple of months ago. In its current state, I see it as a useful tool for certain purposes, particularly when I take the time to refine instructions and table and field descriptions. As they continue to make improvements and I get better at using it, I can imagine it becoming invaluable.
If you would like help with setting up your own agents and/or data infrastructure, reach out.
Decreasing visibility of GBPs, Bing shares Copilot queries with webmasters, Google Grants with Store Visits,…
A call to invest in development for entry-level humans, articles on AI-assisted analytics
Build personas that work better for content marketing. Uncover new data sources for prospect needs,…