Updated:

How to control ad spend with virtual cards

Explore this topicOpen ChatGPT

You can set up virtual cards so marketing can't spend past an approved ad budget, and finance sees every dollar as it posts. Virtual cards for ad spend control give you hard limits while your performance marketers run campaigns day to day. You'll set up the cards, define escalation rules and resets, code and reconcile the spend, and turn on alerts.

What are virtual cards for ad spend control?

A virtual card for ad spend is a card number issued for one ad account, campaign, team, or project, with a hard limit and merchant restrictions enforced at authorization. The card limit controls the dollars, and the ad platform controls pacing.

Daily and lifetime budgets in Google Ads, Meta, and LinkedIn govern how fast a campaign spends. They don't stop account-level overspend, and they won't catch a campaign someone scales by mistake. When you control ad spend across multiple platforms, the card limit is the one control that sits outside all of them.

When a charge would push the card past its limit, the card declines it. The platform then pauses delivery or retries billing, so limit sizing and alerts decide whether a decline protects your budget or stalls a good campaign.

Control layerWho sets itWhat it stopsWhat it misses
Platform campaign budgetPerformance marketerOverspend on one campaign's daily or lifetime budgetNew campaigns, budget edits, and total account spend
Platform account spending limitAd account admin, usually in marketingTotal spend in one ad account past a set amountSpend on other platforms, and any admin can raise it
Virtual card limitFinanceAny charge above the approved budget on that cardPacing within the month and campaign performance

Run both layers, and keep the card limit with finance.

Why finance teams put ad spend on virtual cards

Virtual cards enforce the approved ad budget before money leaves, and they keep each platform's spend separate. A shared card mixes charges from every platform on one statement, and one decline or fraud event can pause every campaign tied to it.

Dedicated cards fix that at the source. You get three benefits:

  • Pre-spend enforcement: Each card's limit holds the approved budget at authorization. Overspend gets declined before it posts to your books.
  • Isolation of failures: A decline or fraud flag affects one platform's card. Campaigns on your other cards keep running.
  • Clean coding: You assign a general ledger (GL) marketing code when you issue the card. Every charge arrives coded, so month-end reconciliation becomes a review.

Move ad spend to dedicated cards before you tune anything else.

How to set up virtual cards to control ad spend

Set up one card per platform per team, size each limit with a buffer, then add escalation tiers, resets, coding, and alerts. Each later setting depends on the card structure you pick first.

1. Choose a card structure that matches how you budget

Match your card structure to the way you already approve ad budgets. For most teams, that's one card per platform per team, with campaign-level cards only for launches or tests you need to isolate.

Per-platform cards line up with platform invoices and keep admin light. Per-campaign cards give the tightest control, but card counts and coding work grow with every launch. Per-team cards fit when several teams buy on the same platform, and per-project cards suit work with a fixed end date.

StructureBest forLimit set toAdmin loadReconciliation
Per platformAlways-on spend on one ad platformMonthly platform budget plus a 5% bufferLow, one card per platformOne card matches one platform invoice
Per campaignLaunches and tests you need to isolateCampaign budget plus a 5% bufferHigh, a new card for every campaignMany small cards to match against campaign reports
Per teamSeveral teams buying on the same platformEach team's monthly allocation plus a 5% bufferMedium, one card per team per platformCharges roll up to each team's department code
Per projectFixed-term work like a launch or pilotTotal project budget, with an expiration dateLow, the card closes at expirationAll charges roll up to one project class

Say your monthly paid budget is $60,000: Google Ads gets $30,000, Meta gets $20,000, and LinkedIn gets $10,000. You also want a $5,000 test card for a new-channel pilot. Carve that $5,000 out of the $60,000 by lowering one platform card for the pilot month, so your total card limits never exceed what you approved.

Pick the structure once, and every later setting follows from it.

2. Set limits and merchant restrictions on each card

Set each card's limit to the approved monthly budget plus a 5% buffer, and restrict it to one ad platform. The buffer covers billing timing, and the restriction keeps the card off every other merchant.

Ad platforms charge you when spend hits a billing threshold or at the end of a billing cycle. A limit set exactly at budget can decline a legitimate final charge and pause delivery in the last days of the month. Your platform budgets still pace spend to the approved amount, so the buffer only absorbs timing.

For the Google Ads card, approve $30,000 and set the limit at $31,500, a $1,500 buffer. Restrict the card to Google Ads as the merchant. Use the advertising services category (MCC 7311) only when one card needs to cover more than one ad platform, and confirm your platforms bill under that code.

Configure six settings on every card, in this order:

  1. Owner: The performance marketer who runs the ad account
  2. Limit: The approved monthly budget plus 5%
  3. Reset period: Monthly for most cards, weekly for high-risk ones
  4. Merchant or category restriction: The platform's merchant, or advertising services for multi-platform cards
  5. GL code: The paid media account for that platform
  6. Expiration date: The planned end date, for project or test cards only

Set all six at issuance, and the card enforces the budget from its first charge.

3. Define approval escalation thresholds for scaling winning campaigns

Give marketers pre-approved headroom of up to 10% above a card's monthly budget with manager approval only. Route larger increases to finance, and send anything above 25% to the CFO or budget owner.

The tiers trade speed for control. A small increase on a winning campaign should clear the same day, while a large one deserves a second look at the forecast and cash.

Increase requestedApproverExpected turnaroundDocumentation required
Up to 10% of the monthly budgetMarketing managerSame business dayCampaign name and reason for the increase
More than 10%, up to 25%Finance (controller or FP&A)Within 1 business dayRecent CPA or ROAS, plus expected spend through month-end
More than 25%CFO or budget ownerWithin 2 business daysRevised forecast and the budget line the money comes from

Say Meta is performing well, and your marketer asks for an extra $5,000 on the $20,000 card. That's a 25% increase, so it lands in the finance tier and should clear within one business day. Finance checks the cost per acquisition (CPA) trend and confirms which line in the $60,000 plan covers it.

Publish the tiers before the month starts, so winning campaigns scale without waiting.

4. Pick a reset cadence: Monthly or weekly

Use monthly resets for most ad cards, and weekly resets for cards where a broken campaign could burn cash fast. Monthly resets match how you plan marketing budgets and how platforms invoice.

Weekly resets cap how much a broken campaign can spend before anyone notices. The trade-off is more declines when spend is lumpy, like a launch week that needs double the usual budget.

An unspent limit doesn't roll over at reset. If Meta spends $17,000 of a $20,000 monthly limit, the card resets to $20,000, and you'd raise the limit on purpose to carry the $3,000 forward. Threshold billing can also push a charge for May 31 spend into June, so keep the buffer and accrue the May spend.

CadenceBest forRiskExample limit
MonthlyAlways-on campaigns with steady spendA broken campaign can burn weeks of budget before anyone checksMeta card at $20,000 per month
WeeklyNew campaigns, tests, and accounts with past runaway spendMore declines when spend is lumpyMeta card at $5,000 per week

Four weekly resets of $5,000 cover a four-week month. In a month with five reset dates, the same card can reach $25,000, so drop the weekly limit to $4,000 or set an alert at $20,000 of monthly spend.

Choose the cadence card by card, based on how much one bad week could cost you.

5. Auto-categorize Google Ads, Meta, and LinkedIn spend to GL marketing codes

Assign the general ledger account and department or class when you issue each card, so every transaction arrives pre-coded. Merchant-based coding rules then map each platform's charges to the right account automatically.

A rule can code every Google Ads charge to Paid media – Search and every Meta charge to Paid social. Adding a department or campaign class at issuance lets you report spend by team without recoding anything.

PlatformCardGL accountDepartment / class
Google AdsGoogle Ads – Demand genPaid media – SearchMarketing / Demand gen
MetaMeta – Demand genPaid socialMarketing / Demand gen
LinkedInLinkedIn – Demand genPaid socialMarketing / Demand gen
Test cardNew-channel pilotPaid media – TestMarketing / Pilot

Ad platforms don't issue a receipt for every charge, so each platform's invoice or billing statement becomes your receipt. Download the monthly invoices from each platform's billing page and attach them to the matching card transactions, or match them by amount and date. If you use Ramp, card transactions sync to your accounting system or ERP, and Ramp auto-codes 90% of transactions.

Code each card once, and you won't recode ad spend at close.

6. Reconcile platform spend to the GL across platforms

Match each platform's billing report to its card's transactions at month-end, then post accruals for spend delivered but not yet billed. Per-platform cards make this a one-to-one match between one card and one invoice.

Work through the close in this order:

  1. Reverse last month's ad spend accruals as the related charges post.
  2. Pull each platform's billing report or invoice for the month.
  3. Match each report to its card's transactions, one card at a time.
  4. Flag timing differences, such as May spend charged in June.
  5. Post accruals for spend delivered in the month but not yet charged.
  6. Record refunds, credits, and invalid-click adjustments to the original GL account.
  7. Compare actuals to budget by platform and sign off.

Platforms issue credits for invalid clicks and billing errors, either as a refund to the card or as a credit against future charges. Book card refunds to the original paid media account, and note account credits on the invoice so next month's match still ties out.

Reconcile one card at a time, and any gap traces back to a single platform.

7. Turn on real-time overspend alerts

Set alerts at 50%, 80%, and 100% of each card's limit, and send them to both the marketer and the budget owner. Alert on declines right away so a paused campaign gets fixed the same day.

Pair card alerts with in-platform automated rules, such as pausing a campaign when cost per acquisition passes $150. Card alerts catch the dollars, and platform rules catch weak performance.

TriggerWho's notifiedExpected action
50% of limit before the 15thMarketerCheck pacing against the monthly plan
80% of limitMarketer and budget ownerConfirm remaining spend or request an increase
100% of limitMarketer and budget ownerApprove an increase through the tiers, or let campaigns pause
Declined chargeMarketer, budget owner, and financeFix the cause the same business day
Platform rule pauses a campaignMarketerReview the campaign within 1 business day

Route every alert to two people, so a decline never sits unnoticed overnight.

How to automate ad spend limits for marketing teams

Automate ad spend limits by issuing cards from a template, routing increase requests through approval rules, and letting resets run on schedule. Your team then reviews exceptions while the rules handle routine changes.

Build the template with the limit, merchant restriction, GL code, and reset cadence. Issue cards when a new channel or team member starts, and freeze them the day an agency or contractor relationship ends.

Track budget vs. actuals in real time so budget owners see what's left when they approve. Ramp Budgets gives you a live view of plan vs. actuals, and approvers see remaining budget at the moment of approval. Card limits still do the blocking.

Automate these six tasks:

  • Card issuance: New cards inherit the template's limit, restriction, GL code, and reset.
  • Increase requests: Requests route to the right approver based on the 10% and 25% tiers.
  • Resets: Limits reset monthly or weekly with no manual changes.
  • Coding: Merchant rules apply the GL account and class to every charge.
  • Alerts: Threshold and decline alerts go out the moment they trigger.
  • Freezes: Cards freeze when an engagement ends or an expiration date passes.

Build the template once, and every new ad card starts within policy.

How ad spend financing differs from card-based spend control

Ad spend financing gives you working capital for ads, while card controls limit and track what you spend. With financing, a lender advances cash for ad spend, and you repay it from future revenue or over set terms, usually with a fee.

The Ramp Corporate Card is a charge card paid in full each statement period, with no interest, so it controls and tracks spend without lending you money. Financing solves a cash-timing gap, and card controls solve overspend and visibility. Put controls in place first, then decide whether you need financing.

Common mistakes when using virtual cards for ad spend

Most ad card problems come from limits sized too tight or cards shared and left open too long. Each one has a fix you can build into setup.

Sizing limits with no buffer

A limit set exactly at budget declines the final threshold charge and pauses delivery. That decline usually lands in the last days of the month, when nobody's watching the card. Add a 5% buffer to every ad card's limit.

Sharing one card across platforms

One card across every platform and client means one decline or credit card fraud event stops everything. It also turns reconciliation into a search through one long statement. Issue one card per platform per team.

Relying on a single control layer

Platform budgets alone can't stop account-level overspend, and card limits alone can't pace a campaign. You need both to catch pacing problems and budget breaches. Set platform budgets for pacing and card limits for the dollars.

Leaving inactive cards open

Cards left active after a campaign, agency, or contractor engagement ends can still take charges. Anyone with the old card number on file can keep running spend. Set expiration dates on project cards and freeze agency cards the day the contract ends.

Keep ad budgets on track with Ramp Corporate Cards

Marketing needs to move fast when a campaign starts working. Finance needs ad budgets that hold on every platform, without chasing charges at month-end.

Ramp Corporate Cards let you issue virtual cards with spend controls built into each card. Ramp enforces those controls at swipe, before spend happens, and blocks 3.5% of transactions for policy violations. The Ramp Corporate Card is a charge card paid in full each statement period, with no interest.

You can set up every ad account with these controls:

  • Issue unlimited virtual cards: Give each platform, team, or test its own card number and limit.
  • Enforce limits at swipe: Merchant, category, and amount controls decline off-budget charges before they post.
  • Set time-bound cards: Expire test and project cards on the date the work ends.
  • Sync and code automatically: Transactions sync to your accounting system or ERP, and Ramp auto-codes 90% of them.
  • Track plan vs. actuals: Ramp Budgets shows live budget vs. actuals, so approvers see what's left before they say yes.

More than 85,000 businesses use Ramp. See how Ramp Corporate Cards work to put limits on every ad account.

Try Ramp for free
Share with
Victoria Naef•Growth
Victoria uses market data and performance insights to help businesses scale efficiently and drive growth.
Ramp is dedicated to helping businesses of all sizes make informed decisions. We adhere to strict editorial guidelines to ensure that our content meets and maintains our high standards.

FAQs

The best virtual card for ad spend works on every ad platform you buy on and lets you issue unlimited cards. Look for per-card limits, merchant restrictions, and automatic accounting sync. Rule out any card that misses one of them.

Tight limits can decline legitimate charges and pause campaigns. Threshold billing can push charges into the next period, and too many cards add admin work. A 5% buffer and one card per platform per team keep both problems small.

Add a dedicated corporate virtual card as the payment method in Meta's billing settings. Restrict the card to Meta and set its limit to the approved budget plus a 5% buffer. Your personal card stays out of company ad spend.

Combine card limits, tiered approvals, platform budgets, and threshold alerts. Card limits block charges past budget, approval tiers govern increases, and platform budgets pace spend. Alerts at 50%, 80%, and 100% of each limit flag problems before campaigns pause.

Corporate cards with per-card monthly limits and real-time tracking work best. Ramp Corporate Cards let you issue a virtual card for each ad platform and track spend as it posts. Give each platform its own card and limit.

“I want to trust the people at our sites to buy what they need, when they need it. With everything in Ramp, they have one place to go and one set of rules to follow. And I can see how all of their spending ties back to the contracts that fund their work.”

Marina Peterson

CFO, Wu Yee Children’s Services

How Wu Yee keeps 12 Head Start sites on one grant plan, one purchase at a time

“I assumed I would have to choose between speed and control. What I found is that you can have both. A well-designed system takes friction out, for the finance function and for everyone else.”

Justin Webster

CFO, Denver Broncos

What it takes to pay for an NFL season: inside the Denver Broncos’ finance rebuild

“A well-run district should not have to choose between getting work done at the school site and keeping control of the dollars behind it. We're not hiring more people to do more jobs, so we have to be smarter about the process. With Ramp, the purchase, the receipt, and the record stay together from the start. ”

Nick Brizeno

Director of Purchasing, San Marcos Unified School District

San Marcos Unified gives maintenance teams room to act — and finance a clear record of their spend across 19 schools

“In senior living, scale only works if the communities still feel personal. We needed the back office to carry more of the complexity, not the people serving residents. Ramp helped us build that infrastructure, so the experience in the community could stay human.”

Ryan Cole

CFO, Agemark Senior Living

How the family-owned business behind 28 senior living communities rebuilt finance to close 19 days faster

“AI is moving faster than the finance context around it. Prices change, models change, and the value is not always obvious from an invoice. We needed enough detail to know which bets deserved more investment — and which ones did not.”

Greg Cooley

Controller, AngelList

From purchase requests to 409 API keys: How AngelList puts spend under owner-level control

“Invoices, cards, tokens. The categories change but the principle doesn't: know where the money is going, remove the work around it, and make sure the spend is worth it.”

Maciej Mylik. Finance

ElevenLabs

ElevenLabs speaks more than 70 languages but its money speaks the same one

“We weren’t trying to retrofit an old finance system. We had a blank canvas, and Ramp gave us the foundation to build a global finance function of the future.”

Justin Dourado

Director of Finance, Othership

How Othership’s first finance hires built one operation across Canada and the U.S.

“There's just no surprises anymore. No more waiting two months to find out how a job did. We know how it's doing as it's happening.”

Erich Kuss

Financial Systems Manager, Infinity Home Services

Infinity Home Services prevents the margin leak nobody can see from the ground, so its 20+ local companies build what they bid