Before you start loading data into BigQuery, you need to understand how Google Cloud organizes your resources. The structure has three levels: organizations, projects, and billing accounts. Getting this right from the start saves you confusion later, especially if you manage multiple clients or multiple environments.
The Three-Level Structure
Google Cloud uses a hierarchy to organize everything you create.
- Organization: the top level. This represents your company or your agency. Every project you create lives under the organization. Organizations are tied to Google Workspace accounts. If you use a personal Gmail account, you do not have an organization level.
- Projects: the second level. A project is a container for all the resources you create in Google Cloud, including BigQuery datasets and tables. You create as many projects as you need. Common setups include one project per client or one project per environment (development, staging, production).
- Billing account: attached to each project. Each project links to a billing account. The billing account is where Google charges you for usage. You set up one billing account and link multiple projects to it.
How Projects Work in Practice
When you create your Google Cloud account, Google automatically creates your first project named “My First Project.” You rename it to something meaningful.
For a marketing agency, a typical project structure looks like this:
One project for internal reporting (your own agency data).
One project per client, or one project for all clients if you want to keep costs and data in one place.
Each project has its own datasets and tables in BigQuery. Data in one project is completely separate from data in another project. You control which users have access to each project.
How Billing Works
Each project is linked to a billing account. Usage charges for that project, including BigQuery storage and query costs, are billed to the linked billing account.
If you manage multiple clients and each client has their own project, you link all projects to the same billing account. You see a single bill that breaks down costs by project.
If a client wants to pay their own BigQuery costs, you create a billing account under their Google Cloud organization and link their project to that billing account instead.
How to Stay on the Free Tier
BigQuery’s free tier gives you 10GB of storage and 1TB of query processing free every month per billing account. To stay within the free tier:
Keep your data volume under 10GB. For most marketing teams loading daily ad performance data, this covers months of history.
Write efficient queries. BigQuery charges based on data scanned, not query runtime. Filtering by date range before running a query reduces the data scanned and keeps you within the free 1TB.
Set a budget alert. In Google Cloud, you create a budget for your project and set an alert threshold. If your spending approaches that limit, Google sends you an email. You catch unexpected usage before it becomes a large bill.
Use the BigQuery sandbox. If you are just getting started and want to explore BigQuery without entering payment information, the BigQuery sandbox gives you access to BigQuery with 10GB of storage and 1TB of queries per month, no billing account required. The sandbox does not support streaming inserts or some advanced features, but it is sufficient for loading and querying marketing data.
User Access and Permissions
Within each project, you assign roles to users. The three main roles are:
- Owner: full access to all resources in the project, including the ability to delete the project and manage billing.
- Editor: can create and modify resources but cannot manage billing or delete the project.
- Viewer: read-only access. Viewers can run queries and see data but cannot modify anything.
For a marketing agency, a typical setup gives the agency owner the Owner role on all client projects, gives analysts the Editor role, and gives clients the Viewer role so they can access their own dashboards without modifying the data.
Setting Up Your BigQuery Project for Marketing Data
Once your project is set up and your billing account is linked, the next step is creating datasets inside BigQuery and loading your marketing data. Porter Metrics connects your ad platforms, CRM, and analytics tools to your BigQuery project automatically. You select your project, choose your dataset name, and Porter loads your data on a daily schedule.
Ready to connect your marketing data to BigQuery?
Porter Metrics makes it easy to sync all your sources — no code required.