English

A Day in the Life of a Paid Ads Manager

The job description said "manage paid campaigns across Google, LinkedIn, and Meta." Six bullet points, one ownership line, a tidy little box on the careers page.

What it didn't say: by 10:42 on a Tuesday, your LinkedIn CPL has doubled from $140 to $287, the LinkedIn Insight Tag is firing twice on /demo because someone shipped a duplicate GTM container, and the new static creative the design team handed you Friday is already at 4.2 frequency on your high-intent retargeting audience. Three fires, none of them in the JD, all of them yours.

If you're a paid media IC at a $5M-$100M ARR B2B SaaS, running spend somewhere between $40K and $400K a month across Google Ads, LinkedIn Campaign Manager, and Meta, this piece is for you. Not for your hiring manager. The goal is simple: hour by hour, what does the day actually look like, and what muscles separate the IC who gets promoted from the one who's still resizing creative in twelve months.

I'll use my own day for the structure. Yours will differ in the details. The pattern won't.

Why the JD lies (gently)

There are three silent killers that the role description never names. Once you can name them, half the job clicks into place.

Creative fatigue. B2B paid creative on LinkedIn typically holds CTR for ten to fourteen days, then decays roughly 15-25% by week three. On Meta, where frequency builds faster, that window shortens. If you're not refreshing static and video assets on a planned cadence, your CPL drifts up while your CTR drifts down, and by the end of the month you've spent the same budget for 30% fewer leads. No one in the JD told you to set a refresh calendar. You just have to.

Pacing drift. You map a $80K monthly budget across four campaigns. Mid-month, two of them under-pace because LinkedIn's audience size shrunk after the platform's quarterly update, and one over-paces because Performance Max started spending into a high-frequency placement. By day 22 you're at 58% of budget with 27% of the month left. That's pacing drift, and fixing it well (without panic-spending into your worst-performing channel on the 30th) is the single most underrated paid skill.

Tracking entropy. UTMs rot. Pixels duplicate. GA4 quietly applies thresholding when your event volume is low and silently zeros out demographic breakouts. A new contact form launches and the dev team forgets to fire the conversion event. HubSpot's lifecycle stage logic gets edited by RevOps without anyone telling marketing. Every two weeks, something in the measurement chain breaks. The IC who notices it on Tuesday wins. The one who notices it on the next month-end review loses.

These three (creative fatigue, pacing drift, tracking entropy) are the actual job. The button-clicking inside ad platforms is the easy part. Pattern recognition across all three at once is the muscle.

Now, the day.

08:00 — Performance check, in order

Looker Studio first. Always Looker Studio first, never the native UIs. The native UIs each tell you a flattering story about themselves; Looker Studio tells you the story across channels.

I have a single dashboard with four sections, in this exact order:

  1. Spend pacing vs. plan, month-to-date. One row per channel. Today's number: total $54,200 spent against a $78,000 plan, day 17 of 30. We're slightly under-pacing on LinkedIn ($14,800 vs. $18,500 expected) and bang on Google. Meta is over-pacing by 9%.
  2. CPL by channel, last 7 days vs. trailing 30. Google search non-brand: $122 vs. $118 trailing. Holding. LinkedIn Sponsored Content: $187 vs. $140. Drifting badly. Meta: $94 vs. $89. Holding.
  3. ROAS on bottom-funnel campaigns. Branded search and competitor-conquest at 6.4x. Retargeting at 3.1x. The retargeting number is below our 4.0x floor.
  4. Anomaly flags. A custom Looker Studio calculated field that flags any line item moving more than 20% week-over-week. Today it flagged two: LinkedIn CPM up 31% (likely an audience-size issue), and a single Google ad group with CPC up 44% (the auction got worse, or a competitor entered).

I write the diagnoses down before opening any platform. "LinkedIn Sponsored Content CPL up 33% week-over-week. Hypothesis: creative fatigue on the top three creatives, all past 14 days." That hypothesis becomes the morning's investigation. If I open the platform first, I get pulled into whatever the platform decides to show me, which is usually something cosmetic.

Looker Studio first. Always.

09:30 — Creative QA on six new ad copy variants

The copywriter shipped six new LinkedIn Sponsored Content variants in HubSpot Marketing Hub overnight. My job is to QA them before they go live.

What I'm looking for, in order:

  • Hook in the first seven words. If the reader's thumb is moving and the first phrase is "In today's competitive B2B landscape," they're gone. I want a number, a tension, or a contrarian claim.
  • One specific number per ad. Not "improve conversion rates." Either "lift demo-to-close 11%" or nothing. Vague claims tank CTR.
  • No filler verbs. "Unlock," "elevate," "harness," "transform" are instant rejects. Every paid IC has their own kill list. That's mine.
  • CTA that matches funnel stage. Cold audience: "see the playbook." Warm retargeting: "book a 20-min walkthrough." Don't ask cold prospects to book a meeting in the first ad.

Of the six this morning: two pass and go to launch queue. Two get sent back with notes ("v3 buries the number in line 4, move it to line 1"). Two get rejected outright because they read like the same ad with different verbs.

This takes me 22 minutes. It's worth it. A bad creative on LinkedIn at $187 CPL costs the team $1,800 in wasted spend before I'd notice it in dashboards. Catching it pre-launch is the cheapest QA you do all day.

11:00 — Async brief to content + design

The 09:30 dashboard told me LinkedIn creative is fatigued at 4.5 frequency on our enterprise-targeting audience. I need four new statics in flight by next Monday.

I open Rework, create a task in the Creative Requests project, and write the brief. The format I use, every time:

Brief: 4 LinkedIn statics, Enterprise audience, creative refresh

Why now: Frequency on current set hit 4.5, CTR down from 0.71% to 0.48% over 9 days. Diagnosis: creative fatigue.

Audience: Enterprise IT decision-makers, Sponsored Content (single-image, 1200x627).

Hook angles to test (one per ad):

  1. The "one specific failure" angle: a named pain with a number ("47% of CRM rollouts stall at month four")
  2. The "before/after" angle: a comparison visual
  3. The "category shift" angle: a contrarian claim
  4. The "social proof" angle: a logo bar with a number

Proof point each must include: a real customer metric or a sourced industry stat. No vague claims.

CTA: "See the playbook" (link to the gated PDF, not the demo form).

Dimensions: 1200x627, under 5MB, text overlay under 20% of image.

Deadline: Friday EOD for design, Monday 9am for my QA pass.

I tag the copywriter and the designer, set the due date, and link the brief to the parent campaign task. Total time: 11 minutes. The brief format is reusable. I copied it from a Rework template and tweak the audience and angles each refresh.

This is the part of the job that compounds. ICs who write tight briefs get tight creative back. ICs who Slack "hey can you make 4 new ads" get four new ads that look like the last four.

13:30 — Mid-day campaign tweaks, live in the platforms

Now I'm in Google Ads and LinkedIn Campaign Manager with my hands on the actual levers. Three actions, all driven by the morning diagnosis:

1. Pause the worst-performing LinkedIn ad group. It's at $312 CPL over the last 7 days against our $140 target. Two of its three creatives are past 18 days live. Pausing it stops the bleeding while I wait for the new statics.

2. Shift 15% budget from LinkedIn awareness to LinkedIn retargeting. Awareness is delivering at $42 CPM but the resulting MQLs aren't converting to SQLs at the rate they were 60 days ago. RevOps surfaced this in last week's call. Retargeting ROAS is 3.1x, below floor, but it's a tracking issue I'm fixing this afternoon, not a real performance issue. Better to keep retargeting fed and fix the measurement than starve it.

3. Fix the bid strategy that flipped overnight on Google. A non-brand search campaign reverted from "Maximize Conversions with target CPA" to plain "Maximize Conversions." Google sometimes does this when a tCPA campaign goes 7 days without enough conversion volume to learn against. I bring it back, but I also lower the tCPA target by 12% so it has room to spend.

These three changes take 35 minutes. None of them are heroic. They're the daily hygiene of running paid spend at this scale. The skill is knowing which lever fixes which symptom. If I'd shifted budget away from retargeting because of the 3.1x ROAS without checking the tracking layer, I'd have starved a healthy channel based on a broken number.

15:00 — Weekly call with Sales Engagement and RevOps

30 minutes, every Tuesday. Three people: me, the SDR manager, the RevOps lead. The agenda is always the same three questions:

  1. Are last week's MQLs converting? SDR manager has the lifecycle data from HubSpot.
  2. What's the lead quality complaint of the week? Always one. Never zero.
  3. What measurement chain broke since last week? RevOps has the answer.

This week's complaint: SDRs say MQLs from last week's Meta campaign aren't picking up the phone. Conversion to SQL is 6%, against a 19% baseline.

RevOps pulls up HubSpot lifecycle stage data on screen. The diagnosis lands in 90 seconds: of the 184 "MQLs" Meta delivered last week, 91 are actually free-tier signups for our self-serve product. They're not bad leads, they're misclassified. The conversion event in Google Ads (and Meta) was set to fire on any form submission, including the free-tier signup form. SDRs are calling people who already have the product.

Action: I tighten the conversion event to fire only on the /demo and /contact-sales form IDs. RevOps adjusts the HubSpot lifecycle stage logic so free-tier signups skip MQL entirely. We agree to monitor for two weeks.

This is tracking entropy in action. The conversion event was correct three months ago, when we didn't have a free-tier product. The product team launched free-tier in February. Nobody told paid. Nobody updated the conversion logic. Six weeks later, my CPL looks great on paper and SDRs are wasting hours.

The IC who catches this in week 6 wins. The one who catches it in week 12 explains it to the CMO.

17:00 — End-of-day pacing review

Looker Studio again. Same dashboard, end-of-day numbers.

We spent $3,180 today against a $2,600 daily plan, with Meta over-pacing again. Month-to-date: $57,380 against $78,000, day 17 of 30. We need to spend $20,620 over the remaining 13 days, or $1,586 per day. That's a 39% drop from today's burn rate.

Two options for tomorrow:

  • Cap Meta at $1,200/day for the rest of the month. It claws back the over-pace.
  • Hold Meta steady and pull $400/day from Google non-brand, where CPL is holding at $122 but the deals are slower-closing.

I pick option one. Meta over-pacing usually signals one placement (right-rail, Audience Network) is consuming budget without converting. I'd rather cap and investigate than starve a stable channel.

I log the decision in Rework, in tomorrow's standup task. Two lines:

Decision: Cap Meta at $1,200/day through end of month. Investigate placement breakdown (suspect Audience Network siphon). If wrong: Restore Meta cap on day 28, push $400/day to Google non-brand for last 3 days.

Logging the decision and the bail-out plan is the part that took me three years to learn. If I just cap Meta and don't write down the contingency, future-me on day 28 will panic-spend without remembering why I capped in the first place.

What this role actually rewards

If you read the JD, the role rewards "managing paid campaigns," which, parsed honestly, sounds like button-clicking inside Google Ads, LinkedIn Campaign Manager, and Meta Ads Manager.

The actual job rewards something different: pattern recognition across creative, pacing, and tracking, fast enough to name the diagnosis before the CMO asks.

The IC who gets promoted to Senior Paid Media Manager isn't the one with the prettiest dashboards. It's the one who, on a Wednesday, can say: "LinkedIn CPL is up 33%. It's creative fatigue on the top three statics, refresh is in flight, and Meta's over-pacing because Audience Network's siphoning budget. I've capped Meta and pulled the new creatives forward to Friday."

Three diagnoses. Three named muscles. No one had to ask.

That's the day. The hours move. The diagnoses repeat.

Learn More