Google Ads API Reporting & Optimization Tool

Internal tool used by Andrii Kolmykov to manage paid acquisition campaigns across client Google Ads accounts โ€” automating reporting, monitoring performance, and supporting day-to-day optimization decisions.

Owner: Andrii Kolmykov
Contact: akolmykov1@gmail.com
Access type: External (client accounts via OAuth)
Use case: Reporting + Campaign management

1. Tool Overview

I am a freelance PPC specialist and fractional Head of User Acquisition managing Google Ads campaigns for small and medium-sized businesses (SaaS, mobile apps, DTC e-commerce, B2B services). To deliver consistent, data-driven service across multiple client accounts, I use a custom-built tool that integrates directly with the Google Ads API.

The tool is operated only by me (single-operator) and is used exclusively to access client Google Ads accounts that have explicitly granted me access via OAuth โ€” either as a manager on their MCC or as a directly linked account.

2. What the tool does

3. Architecture

The tool is a Python application built on top of the official google-ads Python client library, exposed locally through a Model Context Protocol (MCP) server. It runs entirely on my local workstation โ€” there is no public-facing endpoint, no shared multi-tenant backend, and no third-party hosting of credentials.

Stack:
  • Python 3.11 + google-ads client library (Google Ads API v20)
  • OAuth 2.0 with refresh tokens stored locally in encrypted form
  • FastMCP server (stdio transport) for local invocation
  • No external database; query results are session-scoped only

4. API usage pattern

5. Security and access control

6. Why API access is required

The Google Ads web UI is sufficient for individual account work but does not scale for cross-account reporting, structural audits, or repeatable analyses. Using the API for read-mostly workloads:

7. Campaign types supported

Search, Shopping, Performance Max, Display, App campaigns (UAC). The tool is read-mostly across all of these and supports mutations primarily on Search and Performance Max where ongoing optimization activity is highest.

8. Contact

For questions about this tool, the integration, or how I use the Google Ads API in client engagements, please reach out at akolmykov1@gmail.com.