Gttwk · Google Ads API
Internal Google Ads campaign tool
Gttwk is a one-person software studio run by Martin Gottweis. It builds and operates its own portfolio of consumer web products. This page describes the internal tool Gttwk uses with the Google Ads API to advertise those products, who uses it, and how it works.
Business model
Gttwk designs, builds, ships, and markets its own products. Revenue comes from the products themselves (subscriptions and in-app purchases), not from advertising services. Google Ads is one of the channels used to acquire users for these products:
- Roomsies — AI mediation that helps roommates settle disputes.
- Kiwied — photo-first calorie and workout tracking.
- Whitberg — relationship analysis through guided conversations.
- Spray Vision — a gallery for browsing and previewing visual renderers.
All advertiser accounts for these products sit under a single Google Ads manager account (MCC) owned and operated by Gttwk. Gttwk does not manage ads for any third party, does not resell advertising, and does not offer the tool to anyone outside the studio.
What the tool does
The tool is a private command-line and dashboard application built on the official Google Ads API client library. It replaces repetitive work in the Google Ads web interface with a reviewable, scriptable workflow across the studio's own accounts.
| Capability | How it is used |
|---|---|
| Campaign creation | Generate Search and Performance Max campaigns, ad groups, keywords, and ad assets for a product launch from a reviewed spec. |
| Campaign management | Adjust budgets, bids, keyword lists, negative keywords, and pause or resume campaigns in response to performance. |
| Reporting | Pull performance reports (impressions, clicks, cost, conversions) into an internal dashboard alongside product analytics to evaluate return on ad spend. |
Supported campaign types: Search and Performance Max.
How a change flows through the tool
- The operator writes or edits a campaign spec (products, budgets, keywords, ad copy) in a local config file.
- The tool computes a plan: the exact create, update, or pause operations it intends to send.
- The plan is shown to the operator for review. Nothing is sent to Google Ads without an explicit human approval.
- Approved operations are sent through the Google Ads API to the relevant customer account under the Gttwk manager account.
- Reports are pulled on a schedule and stored in the internal dashboard.
There is no fully automated bidding, budget, or campaign generation. Every mutating call is human-reviewed before it is sent.
Who has access
- Users: internal only. The tool is operated by the account owner (Martin Gottweis). It is not distributed, sold, licensed, or hosted for external parties.
- Accounts: only Google Ads accounts owned by Gttwk under its own manager account.
- Credentials: the developer token, OAuth credentials, and refresh tokens are stored locally and in a private secrets manager. They are never embedded in a distributed product or shared with third parties.
Data handling
- The tool reads and writes campaign configuration and aggregate performance metrics only.
- No end-user personal data is uploaded to Google Ads through the tool. It does not use Customer Match, the App Conversion Tracking API, or the Remarketing API.
- Reporting data is stored in an internal database accessible only to the operator.
- The tool complies with the Google Ads API Terms and Conditions and the Required Minimum Functionality guidance for internal tools.
Technical summary
| Client library | Official Google Ads API client library (Node.js / TypeScript) |
| Auth | OAuth 2.0 desktop-app flow tied to the manager account login; a single refresh token stored locally |
| Access level | Basic Access (requested) |
| Expected volume | Low: a handful of campaigns per product, reporting pulled daily |
| Hosting | Runs on the operator's machine and a private server; no public endpoints |
Contact
Martin Gottweis · gottwik@gmail.com
Website: gttwk.com · Résumé · Ventures