Pull your Google Search Console data into a dashboard, up to 500,000 rows per query, with filters, charts, and Excel export. Built with Python and Streamlit.
The Google Search Console interface caps you at 1,000 rows. If you need to download all your Search Console data or export more than 1,000 rows, this app uses the Search Analytics API to batch-fetch up to 500,000 rows across keywords, pages, or both. Think of it as a free GSC bulk export tool.
Useful for SEO reporting, keyword research, and analyzing large sites that exceed the standard export limit.
- Go to search-console-api.streamlit.app
- Log in with your Google account and click Grant API access
- Enter your domain or property URL exactly as it appears in GSC
- Pick your metric, set the date range, hit Fetch Data ✨
- Fetches up to 500,000 rows via batched API requests (25k per call)
- Dimensions: Keywords (queries), Pages, Pages per Keyword, Keywords per Page
- Filter by URL or keyword (contains, not contains, or regex)
- Date range up to 16 months back
- Daily breakdown mode for the table view
- Clicks, Impressions, CTR, and Position charted over time
- Export to Excel
pip install -r requirements.txt
streamlit run home.pyYou will need your own OAuth credentials:
- Go to Google Cloud Console → APIs & Services → Credentials
- Create an OAuth 2.0 Client ID (Web Application) with the Search Console API enabled
- Add
http://localhost:8501/as an authorized redirect URI - Add your credentials to
.streamlit/secrets.toml:
clientId = "your-client-id"
clientSecret = "your-client-secret"- Update
REDIRECT_URIinviews/gsc_api.pytohttp://localhost:8501/
The row limit defaults to 500,000. Change ROW_LIMIT in views/gsc_api.py if needed.
