Custom Bidding Models for Your Ad Campaigns
Manual bid management in Google Ads / Meta Ads with 10,000+ keywords often leads to suboptimal CPA. Platform algorithms optimize for their own goals (maximize clicks/impressions) that may diverge from your KPIs. We build custom ML bid optimizers that directly target ROAS, CPA, or LTV. The architecture below has been refined on 15+ projects with budgets starting at $30K/month. For a $100,000 monthly budget, a 15% ROAS improvement yields $15,000 additional profit. In one project, we reduced CPA from $50 to $32 – a saving of $18 per conversion, totaling $36,000 savings per month at 2000 conversions. On average, clients achieve a 20% reduction in CPA, saving about $20,000 monthly on a $100k ad spend.
Why a Custom Bidder?
Google's default bidding uses signals like user search history – unavailable via API. A bespoke bidding solution wins when your attribution is more complex than last-click (LTV, touch-attribution); business metric is not conversion but, e.g., deposit amount; budget > $50K/month – even a 5% ROAS improvement yields $2.5K/month. On niche audiences, our proprietary model predicts conversions roughly twice as accurately as standard algorithms.
How We Build the ML Model for Bidding
Data Pipeline: Daily import from Google Ads API / Meta Marketing API: impressions, clicks, conversions, costs – broken down by campaign, ad group, keyword, device, hour, audience. In parallel – your own data: LTV, lifetime ARPU. Feature store on ClickHouse with versioning.
Bidding Model: We use gradient boosted trees (XGBoost/LightGBM) or neural networks for non-linear dependencies. Target: P(conversion) considering auction time features. Inference via Triton Inference Server on GPU, p99 latency below 50 ms. The system handles over 10,000 keywords per campaign with ease.
Optimal bid formula:
bid = target_CPA * predicted_CVR * bid_boost_factor # where bid_boost_factor > 1.0 for new keywords (exploration) We employ multi-armed bandit algorithms (Thompson sampling) for cold start and rare keywords, operating at keyword + match type level. According to Wikipedia, multi-armed bandit approaches have proven effective in uncertainty scenarios.
Automated Execution: Through Google Ads API (mutate operations) or Meta Ads API – updates every 6 hours. Fallback to bid_multiplier when API is unavailable.
How Accurate Is a Custom Bidder vs Smart Bidding?
| Criterion | Custom bidder | Smart Bidding |
|---|---|---|
| Optimization goal | Any business metric | Conversions / Conversion value |
| Signals | Limited to API | Full Google context |
| Flexibility | Full (formulas, weights) | Only presets |
| MLOps required | Yes | No |
| Typical ROAS lift | +10–25% on niches | Baseline |
In one case, our tailored optimization algorithm achieved 2x more accurate conversion predictions compared to Google's automated bidding for a niche audience.
ML Model Comparison: GBT vs Neural Network
| Parameter | Gradient Boosted Trees | Neural Network |
|---|---|---|
| Interpretability | High (SHAP, feature importance) | Low (unless explainable methods) |
| Sparse data handling | Excellent | Needs embeddings |
| Inference performance | <10 ms on CPU | <50 ms on GPU |
| Typical ROAS lift | +10–15% | +15–25% with sufficient data |
Risks and How to Avoid Them
The main risk is metric degradation during the cold start phase due to exploration. We use bandit algorithms to balance exploration and exploitation. MLOps infrastructure is also required for drift monitoring and automatic retraining. According to Wikipedia, multi-armed bandit approaches have proven effective in uncertainty scenarios. With over 10 years of experience, we guarantee a minimum 10% ROAS improvement or we refine the model at no extra cost.
Limitations and Realism
A custom bidder is not a replacement for default bidding for 80% of advertisers. It is needed by those with specific KPIs and sufficient budget. We honestly evaluate potential through backtesting before launch. Request a backtest for your data to assess potential lift.
Process of Work
- Analysis – audit current metrics, data quality, identify bottlenecks (2–3 days).
- Prototype – quick model on historical data, backtest, lift forecast (1–2 weeks).
- Integration – deploy pipeline, isolate traffic in A/B test (2–3 weeks).
- Launch – gradual ramp-up with drift monitoring, auto-rollback (1 week).
- Optimization – retrain, add features, tune (ongoing).
What's Included
- Architecture and model documentation (model card);
- Docker images for inference, Kubernetes manifests;
- Monitoring (Prometheus + Grafana dashboards);
- Training your team on the system;
- 3 months of technical support after launch, including guaranteed uptime.
Timeline: 5–8 weeks to first production campaign. Cost is calculated based on your data volume and funnel complexity. Contact us for a data analysis and lift forecast.
Our experience: 10+ years in AI and ad tech, 50+ ML pipelines deployed in production. We have been using multi-armed bandits in production for many years. Our track record speaks for itself.
Get a consultation and lift forecast in 2 days.







