ANTIGRAVITY LABJP
Articles/App Development
App Development/2026-05-21Advanced

Tuning AdMob Placements at Runtime with Firebase Remote Config and an Antigravity Agent

A practical look at how I combine Firebase Remote Config with an Antigravity Agent to nudge AdMob placements while the app is live, drawn from years of running wallpaper apps as an indie developer.

Antigravity338Firebase6AdMob12Remote ConfigIndie Dev4Monetization7

Premium Article

Of all the genres I have shipped since I started building apps on my own back in 2014, wallpaper apps are the one I have lived with the longest. Somewhere after the cumulative install count crossed 50 million, my weekly time budget shifted away from new features and toward a single quiet question: how do I keep the ad load and the user experience in balance? Each release I would inch the AdMob dashboard settings for App Open, interstitial, and rewarded placements. Each release something somewhere would slip — Day 1 retention, eCPM, IAP conversion. Even when I was paid by the apps, that loop felt like it was paying with my weekends.

For the past few months I have been pulling that work apart and reassembling it as a small, safe nightly tuning loop built around Antigravity's Agent and Firebase Remote Config. The parts that work give me real confidence, and the boundaries where I have decided not to let the Agent in have become much clearer. What follows is the whole picture, with the operational details I have only learned by running it in production on apps that earn real money.

The catalyst: a 2% Day 1 dip I could not explain

The trigger was last fall's release. I changed App Open frequency from "once per session" to "suppress on Day 0, unlimited from Day 1 onward." Within a week, Day 1 retention in Firebase Analytics dropped from 33% to 31%. At my scale of a few hundred thousand DAU, two points matter.

MetricBefore (7-day avg)After (7-day avg)Delta
Day 0 → Day 1 retention33.4%31.2%-2.2pt
Interstitial eCPM$4.12$4.05-1.7%
App Open eCPM$2.85$3.91+37.2%
Daily ad revenue$1,820$1,910+4.9%

Short-term revenue went up. The catch was that the retention dip ate into LTV, and three months later the ad revenue had reversed and was sliding. I had bundled three other changes into that release, so I could not tell which knob had moved the needle. I ended up rolling the whole app back to the previous version and rolling back the ad units in the AdMob dashboard by hand. The three days I spent waiting on App Store and Google Play review cost an estimated $5,000 in lost ad revenue.

Sitting on that loss as a single-person operation, the lesson burned in: monetization decisions need to live on a different cadence than your app binary. The moment you couple them to a release, your rollback latency is bounded by store review. That is when I started taking Firebase Remote Config seriously.

Why Remote Config alone was not enough

Remote Config itself slotted in quickly. I moved the variables I wanted to nudge — ad unit IDs, frequency caps, the Day 0 suppression flag, the rewarded multiplier — into Remote Config, and the app reads them at launch via fetchAndActivate() and passes them into the AdMob wrapper. Tweaks no longer needed a release, and rollback was just "set it back to the previous value."

What Remote Config did not solve was the harder problem: deciding which value to move next. That part stayed manual. Each morning looked like:

  • Look at eCPM trends in the AdMob dashboard
  • Look at Day 1 retention in Firebase Console
  • Check Google Play Console and App Store Connect for crashes and reviews
  • Synthesize all of the above into a judgment like "today let's pull App Open frequency from 1.0 to 0.7"
  • Update Remote Config

Thirty to forty-five minutes of that, every morning, quietly eats the rest of my indie dev day. Across multiple apps in parallel, weekends started to feel like an extension of ad monitoring. The question of this piece is whether Antigravity's Agent can be inserted into that loop.

Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
Four naming conventions that make Remote Config and AdMob safe to operate together
A concrete nightly tuning loop powered by an Antigravity Agent
How to choose the share of users your Agent is allowed to touch without breaking eCPM or Day 1 retention
Secure payment via Stripe · Cancel anytime

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
Share

Thank You for Reading

Antigravity Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • Copy-paste ready implementation code
  • New advanced guides published daily
  • $5/mo or $10 for lifetime access
View Membership →

Related Articles

App Dev2026-05-03
Launching an Indie SaaS on Antigravity — A 2026 Monetization Roadmap
A practical 2026 roadmap for monetizing an indie SaaS built with Google Antigravity's agentic IDE — covering use-case selection, agent-aware unit economics, pricing for multi-step tasks, and the retention work specific to agent-driven products.
App Dev2026-04-26
Multiplying Your Effective Hourly Rate 10× with Antigravity Multi-Agent — Practical Patterns for Indie Devs
Most indie developers stop earning more not because their skill plateaus, but because they can't run things in parallel. Here's how I use Antigravity multi-agent to parallelize estimation, implementation, and client comms — and lift my effective hourly rate by 10×.
App Dev2026-07-14
Protecting Screenshot Tests for AdMob Screens from Ad Nondeterminism
Screens with ads turn red on every screenshot run, and eventually nobody reviews the diffs. Here is a design that seals off AdMob banner nondeterminism and leaves only real layout breaks in your checks, with Compose code and Antigravity-driven diff triage.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →