All resources

Agency operations · 6 min

A project structure that keeps agency reporting clean

Model every client as a separate project so stores, advertising properties, campaigns, and reporting never leak into another account.

In this guide

An agency portfolio needs a global overview, but daily decisions happen inside one client context. A clear project boundary makes both views possible without mixing operational data.

Use one project for one commercial context

In the KPIAds beta model, a project represents a brand, client, or website. It has one primary ecommerce connection and can include several advertising properties and many campaigns.

The organization owns billing and team access. The project owns the reporting context. This separation avoids creating a different paid account for every store while preserving client boundaries.

Connect portfolios once, assign properties deliberately

An Ads OAuth connection may expose several accounts or properties that an agency can access. Only the selected property and campaigns should be assigned to a project. Access to a broad portfolio must never imply that all of its data belongs in every client report.

  • Name projects after the client or brand, not the advertising account.
  • Verify the store domain before confirming a web connection.
  • Review property and campaign assignments when a client changes agency access.

Keep portfolio and project screens different

Portfolio screens are for comparison and triage: which project needs attention, which source is stale, and where performance changed. Connection settings, campaign analysis, and data health belong inside the active project.

This keeps the navigation predictable for a single-store owner and still scales to an agency with twenty clients.