A readout to a client's leadership team
Case study

Capital One moved Google Ads bidding to keyword-level attribution

Search ad budgets were set from third-party tools and judgment, with no clear view of which keywords drove accounts.

Capital One

Capital One · Sales and pricing · L2

85%accuracy predicting conversion value per keyword

The workflow before

Capital One relied on third-party bidding tools and qualitative reviews to judge its Google Ads keywords. Last-click attribution missed most of the customer journey, and analysts adjusted bids by hand after the fact. With millions of keywords across thousands of campaigns, the team could not reliably tell which spend to scale and which to cut.

What we built

We built a neural network attribution model in TensorFlow that predicts the conversion value of each keyword, trained on more than 3 years of keyword performance joined with conversion and CRM data in Amazon Redshift.

The model feeds a bid adjustment engine through the Google Ads API. High performers get higher bids, underperformers get lower bids, and campaigns that keep missing benchmarks are flagged for review and paused if they do not recover. Daily limits cap how far any bid can move.

Dashboards and alerts show keyword performance, prediction accuracy and every bid change, so the marketing team can see why the system made each move.

Before and after

MeasureBeforeAfter
AttributionLast click, from third-party toolsKeyword-level, multi-touch model
Bid changesManual, after the factAutomated daily within set limits
Data freshnessDays to weeksHourly Google Ads extracts
Underperforming campaignsJudged case by caseFlagged against benchmarks for review

What's next

The same data and model serving pattern can extend attribution to display, social and video spend, so budget moves across channels follow the same evidence as search.

ShareLinkedInEmail

Airflow pipelines pull hourly keyword data from the Google Ads API and sync conversions, website analytics and CRM data into Amazon Redshift, with automated data quality checks.

Python feature pipelines build keyword, campaign, performance and seasonal features. The TensorFlow model combines dense layers with an LSTM layer, is validated on time-based splits, and is retrained when accuracy drops. TensorFlow Serving returns predictions in under a second.

Bid changes are bounded (at most 25% up or 30% down per day), require minimum data before acting, and respect budget limits. A/B tests and holdout groups compare model-driven bidding with manual bidding. Tableau dashboards track results.

Next step

Let's build the case study we tell next.