Changelog

What we shipped.

We ship the way we want our software to behave — frequently, in small visible pieces, with the math shown.

Improvement

Honest signup page and a page for each feature

Rewrote the signup page. We took down the trust badges we hadn't earned and left the one thing near the form that's actually true: read-only Meta access by default, tokens encrypted at rest, no card to start.

Published a page for each of the three features (Account Shield, True ROAS, Creative Scoring) and a short manifesto explaining why Advino exists. Every number on them traces back to something we can show you, including the worked True ROAS example.

Audited the rest of the site for claims we couldn't back. Softened three stats to what we've actually observed, standardized the free trial wording on one month, and fixed the page titles and link previews that still described an older version of the product.

New

Account Shield notifications now fire by default

Every new agency gets an email alert preference at signup, pointing at the owner email at medium-severity threshold. Spend spikes, ROAS collapses, and zero-delivery campaigns get to your inbox without you configuring anything.

Slack alerts are opt-in. Paste a webhook URL into Settings → Notifications and pick the severity threshold. Goes to the same dispatcher with the same dedup window.

Backfilled for existing agencies. If you're already on Advino, the next critical event will reach you without any setup.

Fix

Sync now stays fresh after every deploy

Two compounding bugs left Meta data stale: ARQ cron ticks were getting skipped by container restarts, and the column update was silently failing for detached SQLAlchemy objects. Insights were sometimes hours behind the actual account state.

Fixed. Every deploy now triggers an immediate full sync, and the cron runs every 2 hours instead of every 6. Worst-case staleness is now under 2 hours, even with multiple deploys per day.

New

MCP server at https://mcp.advino.app/sse

Advino now exposes its monitoring data over MCP — query account health, Shield alerts, true ROAS, and creative scores from Claude, ChatGPT, or Cursor.

Ten tools live. Reads are plan-gated and quota-limited. Writes (pause ad set, create alert rule, bulk action) always return a requires_approval response — Advino never silently executes a write tool. You confirm in the web app.

Install snippet is on /mcp. Pretty URL works because we moved DNS to Cloudflare; details in the engineering notes if you're curious.

Improvement

4-tier pricing live across the app

Solo ($19), Studio ($49), Agency ($129), Scale ($299). Picker is the same in three places — /pricing, Onboarding, and Settings → Billing — so you can switch monthly/annual and pick the right tier from any surface.

Existing subscribers keep their grandfathered plan and pricing until they choose to switch. Plan switches go through Stripe's billing portal so proration is clean.

Improvement

Faster, more accessible marketing pages

The /mcp page went from a 3.7s LCP to 1.3s by deferring the icon font, which was render-blocking. Tertiary text contrast was bumped so it passes WCAG AA cleanly. Lighthouse scores on /mcp now sit at 95 / 100 / 100 / 100.

New

Account Hub Phase 2

Wallets, monthly statements with PDFs, markup invoicing, auto-replacement rules, and Stripe Connect direct charges from clients to the agency. Advino never custodies funds — money moves agency-direct.

Improvement

Advino brand and product cut

Renamed from AdPulse to Advino, narrowed the product to three things (Account Shield, True ROAS, Creative Scoring), and retired the client-facing portal surface. The ops tooling it carried moved to a separate sister product.

The MCP launch a few days later was a direct consequence of this focus.

Got a request? Reply to any Advino email or write to [email protected]. The roadmap is mostly built from what agencies ask for.