← Back

ASA Engine

Apple Search Ads campaign automation system

ASA Engine overview

Context

Co-founder at 14x, an app studio. Built in ~1 week as an internal tool alongside app development. The system automates the full Apple Search Ads lifecycle: research, verification, strategy generation, execution, and optimization. Claude Code handles the heavy research while a Next.js dashboard surfaces decisions for human approval.

The Problem

When shipping apps at 14x, we wanted to explore every distribution channel, including Apple Search Ads (ASA), where 70% of App Store visitors use search to find apps.

The existing ASA management tools (SearchAdsHQ, SplitMetrics, etc.) had three fatal flaws: expensive ($500+/month plans that don't make sense for an indie studio testing a channel), black boxes (no way to verify the accuracy of their keyword data or bid recommendations), and manual by default (still required hours of spreadsheet work to build campaigns across multiple countries).

The core issue: I couldn't trust tools that wouldn't show me where their data came from. If I'm spending money on ads, every keyword needs to be provably real. Not estimated, not "suggested," but verified against Apple's own systems.

The Solution

A complete campaign automation system that handles the full ASA lifecycle. Claude Code runs playbooks (scrapes App Store listings, generates seed keywords per locale, hits Apple's autocomplete API, verifies keyword popularity via Apple's GraphQL API). The viewer (Next.js dashboard) is where I review data, build strategies, adjust bids, approve campaigns, and go live via the ASA API.

The Verification Gate: the strategy engine flat-out refuses to generate a campaign if any keyword is unverified. Every single keyword must be scored against Apple's internal keyword planner API, per country. This is the differentiator. Most advertisers guess. This system doesn't generate a campaign unless every input is proven.

Multi-Locale Keyword Research Pipeline: an automated pipeline across 37 supported locales that generates seeds in each target language, hits Apple's autocomplete API with country-specific storefront IDs, runs keyword variation checking, compiles results with relevance filtering, and verifies popularity per-storefront via Apple's GraphQL API.

One-Click Execution: the approved strategy executes via Apple Search Ads API v5: campaigns, ad groups, keywords, negatives, targeting, bids, all created programmatically. A typical execution runs 40-50 API operations in seconds.

Outcomes

  • Channel explored with maximum rigor: gave our Signature Maker app the best possible shot at ASA by eliminating guesswork
  • Conclusion reached faster: discovered the niche was too competitive for ASA within days rather than months of manual trial-and-error
  • Reusable infrastructure: the system is app-agnostic, adding a new app requires one command
  • The campaign for Signature Maker proved the space was too competitive at our budget level. That's a valid and fast answer that saved months of wasted ad spend.

Learnings

  • Build the verification system before the execution system. The hardest part of ad automation isn't creating campaigns. It's knowing you're creating the right campaigns.
  • "Negative results" are still results. The system conclusively proved ASA wasn't viable for this niche at our budget. That's a decision made in days with confidence.
  • AI enables domain-expertise tooling for non-experts. I'm not an ASA specialist. But by deeply researching the domain and encoding best practices as playbooks, I built a system that follows expert-level practices.

Timeline

Apr 2026 - 1 week

Stack

Next.jsTypeScriptApple Ads APIshadcn/uiTailwind CSS

Responsibilities

  • System architecture
  • Keyword verification pipeline
  • Strategy engine
  • Multi-locale research automation
  • ASA API v5 integration