07FAQFAQ
Most questions cover query costs, GA4 export tables, several projects and sending data in, as well as freshness. Then come 3 fixes: numbers that don't match, empty lists, and a change that fails with a 403.
Will this add to my BigQuery bill?
Yes. Every query Claude runs bills the bytes it reads, at least 10 MB per table and per query, and LIMIT doesn't lower it (BigQuery on-demand pricing). The first 1 TiB a month is free, while a date range on a partitioned table scans less (how BigQuery costs add up).
Can Claude read my GA4 export?
Porter lists each daily events_YYYYMMDD table of a GA4 export as its own table, and Claude reads one day per question. For a month, point Claude at a partitioned summary table. Intraday tables are deleted as soon as the day is complete (Google's GA4 BigQuery export guide).
Can I connect several projects or client warehouses?
Yes. As long as your Google sign-in can see a BigQuery project, Claude sees it. For example, agencies with several Porter companies see each authorization under its own company. Each table Claude reads is billed as one data source account, so start with the tables clients ask about most.
Can Porter also send data into BigQuery?
Yes. Porter can also send marketing data to BigQuery: blends of ad, analytics and CRM sources written to a dataset on a schedule. Claude then reads those tables through the same BigQuery connector, next to your team's own tables.
How fresh is the data?
Porter reads each table the moment Claude asks, so answers are as fresh as the table. Streamed rows can be queried as soon as BigQuery acknowledges them. On the free plan, date ranges reach back 30 days, though only 15 days inside AI chats.
Troubleshooting
Why don't the numbers match BigQuery?
BigQuery numbers come back to Claude through Porter as text, and so do dates. Stored ratio columns such as CTR get summed when no column splits them, so divide totals instead. A range that includes today is still incomplete. Finally, tables that require a partition filter need the date range on that column (Google's guide to partitioned tables).
Why do I see no projects or an empty table?
Reconnect with the Google account that owns the project. An empty project list means the account you signed in with lists no BigQuery project, so there is nothing for Claude to read yet. Similarly, an empty column list means the item isn't a table, or your account has no read access to it.
Why did a change fail with a 403?
Reconnect BigQuery in Porter with a write scope, then ask Claude to run the change again. A 403 on a change means the Google sign-in Porter holds has a read-only scope, so reads keep working while writes wait for the new scope.