← Home
Internal Tool

Mission Control

Our internal campaign intelligence platform that automates product research, keyword analysis, and campaign management for international paid search advertising.

Mission Control automates the labor-intensive process of evaluating thousands of potential products for paid search campaigns. It collects marketplace data daily, validates bottom-of-funnel search intent, classifies brand bidding policies, and scores product opportunities — replacing hours of manual work with a data-driven pipeline.

The platform integrates with the Google Ads API for keyword research (search volume and competition data), campaign performance reporting, and programmatic campaign creation from validated product templates.

1,430+
Products tracked
4
Validation layers
30+
Countries targeted
Daily
Automated runs

How Mission Control works

The pipeline runs daily via cron, processing marketplace data through multiple enrichment stages before producing a ranked list of campaign candidates.

Daily Pipeline
1

Collect Live

Spider scans affiliate marketplace via API, extracts product data (gravity, commission, conversion rate, category)

2

Store Live

UPSERT into PostgreSQL — products, listings, daily snapshots for trend detection

3

Validate Live

4-layer funnel validation: linguistic analysis, visual search, AI semantic check, temporal search volume pattern

4

Classify Live

Brand bidding policy extraction from affiliate program pages (regex + AI fallback)

5

Enrich — Keyword Research Google Ads API

KeywordPlanIdeaService: retrieve search volume history, competition level, CPC estimates for product names

6

Score Live

Priority score from all signals: funnel score + brand bidding + competition + trending + payout

7

Report Google Ads API

GoogleAdsService.Search: pull campaign performance data for active products, cross-reference with opportunity scores

8

Create Google Ads API

CampaignService: programmatic campaign creation from validated product templates (human approval required)

API usage detail

Mission Control uses the Google Ads API across three functional areas. The tool is exclusively internal — used by 2 employees for our own Google Ads accounts.

Phase 1 — Keyword Research (Immediate)

ServiceKeywordPlanIdeaService
MethodGenerateKeywordIdeas
InputProduct names (e.g., "ProDentim", "Kerassentials")
Outputavg_monthly_searches, competition, cpc_low_micros, cpc_high_micros, monthly history
Frequency50–100 queries/week (batch, not real-time)
PurposeEvaluate search volume trends and campaign viability before investing ad spend

Phase 2 — Campaign Reporting (Planned)

ServiceGoogleAdsService
MethodSearch / SearchStream (GAQL)
PurposePull campaign metrics into PostgreSQL for cross-analysis with product opportunity scores
DataImpressions, clicks, conversions, cost, CPA, search terms, impression share

Phase 3 — Campaign Management (Planned)

ServicesCampaignService, AdGroupService, AdGroupAdService, AdGroupCriterionService
PurposeAutomate campaign creation from validated product templates with human approval
SafeguardsMax +20–30% budget increases, CPC Manual default, Display Network always OFF, exact match keywords, human review before any campaign goes live

Product opportunity ranking

The pipeline produces a ranked list of campaign candidates with scores from all validated signals.

$ python cb_queries.py --picks
═══ TOP PICKS — Campaign Candidates ═══ # Product Prio Funnel Grav Avg$ Trend BB ───┼──────────────┼──────┼────────┼──────┼────────┼───────┼──── 1 SLEEPLEAN 88 53 22 $274 +1 2 SYNAPTIGEN 88 53 16 $192 +2 3 IGNITRA 88 53 24 $188 +5 4 FBTONIC 84 54 15 $133 +3 5 NEUROPRIME 83 53 33 $149 +2 Prio = priority_score (funnel + trending + payout + gravity + brand bidding) BB = brand bidding allowed ✓ | prohibited ✗ → Next: enrich with Google Ads API keyword data (search volume + CPC)

Architecture

Mission Control runs on a dedicated Linux server with PostgreSQL for data storage. All Google Ads API credentials are stored in an encrypted vault (Bitwarden). The tool accesses only our own accounts under MCC 363-403-0700.

architecture
┌─────────────────────────────────────────────────────────┐ Mission Control ┌────────────┐ ┌────────────┐ ┌──────────────────┐ Marketplace │ │ Google Ads │ │ Funnel Validator Spider │ │ API Client │ │ (4-layer AI) └──────┬─────┘ └──────┬─────┘ └────────┬─────────┘ │ │ │ └──────────────┼────────────────┘ ┌──────────────────┐ PostgreSQL 16 31 tables 4 schemas └────────┬─────────┘ ┌──────────────────┐ Scoring Engine → Ranked picks + Alerting → Campaign creation └──────────────────┘ └─────────────────────────────────────────────────────────┘ Access: Internal only (2 employees) | MCC: 363-403-0700 Credentials: Bitwarden encrypted vault | Server: Ubuntu 24 LTS