Looker Studio connector
Connect CitedSpy to Looker Studio to build custom dashboards that visualize your GEO (Generative Engine Optimization) data alongside other marketing metrics.
What you can build
- Mention rate over time - chart how often each AI engine mentions your brand week over week
- Sentiment breakdown - positive vs neutral vs negative mentions per engine
- Citation funnel - total citations vs brand domain citations
- Engine comparison - side-by-side visibility across ChatGPT, Perplexity, Gemini, Claude, and Copilot
- Prompt-level drilldowns - see which prompts drive the most visibility
Prerequisites
- A CitedSpy account on the Pro plan (API access required)
- A Google account to host the connector in Apps Script
Step 1 - Generate an API key
- Log in to app.citedspy.com.
- Go to Settings > API Keys.
- Click New API Key, enter a name like "Looker Studio", and copy the key.
Your key starts with cspy_. Store it securely - it is only shown once.
Step 2 - Deploy the connector
The connector is an open-source Google Apps Script project included in the CitedSpy repository at integrations/looker-studio/.
- Open script.google.com and click New project.
- Name the project (e.g. "CitedSpy GEO Connector").
- Replace the default
Code.gscontent with the contents ofintegrations/looker-studio/Code.gsfrom the CitedSpy repository. - In Project Settings (gear icon), enable Show `appsscript.json` manifest file in editor.
- Replace
appsscript.jsonwith the contents ofintegrations/looker-studio/appsscript.json. - Save the project (Ctrl+S / Cmd+S).
Step 3 - Add the data source in Looker Studio
- Open Looker Studio and click Create > Data source.
- In the connector gallery, select Build your own (or search for community connectors).
- Click Deploy from manifest or use the script project's deployment URL.
- Authorize the connector when prompted.
- Enter your
cspy_...API key in the credentials screen. - Select the brand you want to analyze.
- Click Connect.
Looker Studio will display the CitedSpy schema. Click Create Report to start building.
Available fields
| Field | Type | Description |
|---|---|---|
| Run Date | Date | Date the prompt was executed |
| AI Engine | Text | ChatGPT, Perplexity, Gemini, Claude, or Copilot |
| Prompt | Text | The tracking prompt (truncated to 200 chars) |
| Brand Mentioned | Boolean | Whether your brand appeared in the response |
| Mention Sentiment | Text | positive, neutral, or negative |
| Brand Domain Cited | Boolean | Whether your domain appeared in citations |
| Total Citations | Number | URLs cited in the response |
| Runs | Number | Always 1 per row - SUM to count runs |
| Token Cost (USD) | Number | API cost for this run |
Useful calculated fields
Add these in the Looker Studio field editor:
Mention rate (percentage of runs where brand was mentioned):
SUM(brand_mentioned_as_number) / SUM(Runs)Citation rate (percentage of runs where brand domain was cited):
SUM(brand_cited_as_number) / SUM(Runs)To convert boolean fields to numbers for calculations, create a calculated field:
CASE WHEN Brand Mentioned = true THEN 1 ELSE 0 ENDData limits
The connector fetches up to 2,000 runs per date range. For large date ranges, narrow the window or run separate reports per engine.
Troubleshooting
"Invalid credentials" on setup - Make sure you copied the full API key including the cspy_ prefix.
Empty brand list in config - Your API key may not have access to any brands. Check the key's workspace in Settings.
No data returned - Confirm runs exist for the selected brand and date range in the CitedSpy dashboard.
Need help? Contact us at citedspy.com/contact.