1368
Stanford graduate. For the past decade I’ve been advising and consulting marketing strategies for the boards of DTC businesses like Onnit, Goli, Obvi, Mudwtr, Prestige Labs (Alex Hormozi brand), Mr. Davis, Scanlan Theodore. ◾️Work inquiries - tegra.co
Teams say "attribution is set up." That phrase tells me nothing. The config review tells everything.
Self-reported attribution accuracy is the resume of hiring. It describes what the team intended. The config review is the work trial - it shows what the bidder is actually receiving.
Three failures appear in every SaaS and mobile UA account review. Not sometimes. Every time.
Failure 1: offline conversions firing on demo-booked, not pipeline-value-weighted opportunity.
The team enabled the HubSpot-to-Google offline conversion integration. The default mapping pushes "qualified opportunity" with equal weight regardless of deal size. Nobody enabled the custom-property mapping that passes ACV as the conversion value - RevOps had to expose one field and nobody owned the ticket. The bidder has been treating a $5K SMB and a $90K enterprise account as identical for 18 months.
Fix: two days. One HubSpot custom field, one import remapping.
Failure 2: hybrid PLG/sales-led traffic running through one campaign.
Problem-aware traffic ("best project management software") and solution-aware traffic ("Asana alternative for engineering teams") have different intent signals. When they share a campaign, the bidder optimizes for the larger volume cohort. Problem-aware wins. The sales-led funnel gets starved. Two-track structure separates them, lets each bidder operate on the right signal.
Fix: one week.
Failure 3: Meta lead-ads form data not flowing back to CRM for ICP scoring.
Lead-form submissions land in a spreadsheet. Nobody ran the native CRM integration or mapped the ICP scoring field back to Meta's CAPI. The CAPI fires "form submitted" with no qualification signal. Meta optimizes for form-fillers who match the cheapest ICP. The scored qualified leads never tell Meta which profile converts.
Fix: three days. Native integration + two custom events mapped.
Platforms ship the easiest integration by default. Revenue-true configuration requires one extra step nobody scheduled - one custom field, one remapping, one CAPI event. The bidder optimizes perfectly against whatever input it gets, and the input is where all three failures live.
The cheapest warm click in local services is the aggregator's own brand name in your keyword list.
You catch the high-intent searches they paid to create - and the people already regretting it.
"HomeAdvisor reviews." "EverQuote alternative." "LendingTree vs." People search those names the moment they regret handing their info to a lead reseller. That's a homeowner or borrower already in market, already skeptical of the middleman. The cheapest warm click in your account.
But the landing page makes or breaks it. Here's the structure I use.
Section 1: Head-to-head hero
- Headline: "[Aggregator] vs Working With [Your Firm] Directly."
- Two-column visual: the resold-lead path vs the direct path.
- CTA: "See the difference."
- Instantly tells the searcher they're in the right place.
Section 2: The "why" block
- Right under the hero, say why the comparison exists.
- Key line: "We built this because we got tired of competing for leads you already paid for."
- Lowers skepticism, answers the unspoken question: why should I trust this page?
Section 3: Problem awareness
Name the pain before the table. "Most homeowners don't realize a HomeAdvisor lead is sold to 4 other contractors at the same time." "Most people don't know an EverQuote quote request hits 8 agents in 60 seconds." Connect the comparison to the outcome they actually care about: getting handled by one accountable provider.
Section 4: The comparison table
The core. Compare on what matters in your vertical:
- Response time (one provider vs 4-8 racing you)
- Who actually shows up / who actually advises
- Licensing, bonding, local presence
- Pricing transparency, financing, warranty
- Real local reviews vs platform reviews
Keep it factual. Let the rows do the selling. Highlight your strengths, never trash the competitor by name. Credibility dies the second it reads petty.
Section 5: The honesty filter
Add "Is working with us right for everyone?" Be upfront about who you're not for (price-only shoppers, out-of-area, etc.). Counterintuitive, but it builds real trust and it pre-qualifies the lead before the call.
Section 6: Social proof
Star rating + review count. Testimonials that reinforce the switch: "Called three HomeAdvisor contractors, got bounced around for two days. Called these guys, tech was out the same afternoon."
Section 7: Offer + FAQs
The compliant offer (free estimate, no trip fee, second-opinion, no-credit-pull first step). Objections in an FAQ accordion. Clean closing CTA to call or book.
Two routes:
- Independent / educational page: pros and cons, doesn't lead with brand ownership. More persuasive, more scrutiny.
- Branded page: clear ownership, informative tone, no attacks. Safer when you're up against a large platform with lawyers.
The compliance line that keeps you out of trouble:
In PI law, insurance, and mortgage, do NOT build "[your firm] vs [named regulated competitor]" pages making outcome or rate claims. Compare yourself to the *model* (the aggregator, the referral mill, the resold-lead path), not to a named carrier, lender, or firm, and never claim a guaranteed rate, approval, or settlement. Bar rules, DOI rules, and UDAAP all live in that gap. For HVAC and dental you have far more room, but the same "factual, not petty" rule still wins.
The key: you're not attacking anyone. You're positioning yourself as the accountable alternative to a system the searcher already distrusts. They feel like they're making an informed call, not getting sold.
Feed this wireframe into AI, drop in your vertical and your real proof, and you've got a first draft by this afternoon. Almost nobody in local services runs this page well right now.
Perell ran 5.4M views and 241K subscribers before Hollywood said yes. Your VSL needs 30 days at $50/day. Same model.
Hollywood won't greenlight a show without proof the audience exists. The proof comes before the permission.
Most info-product creators are running the Hollywood model on their own launches. Build the Kajabi course, record the modules, wire the email sequence - then run first paid traffic and discover nobody's buying. The test should come before the build.
The creator-economy greenlight system:
Run the VSL for 30 days at $50/day. Total: $1,500.
Three signals:
- Show rate. What percentage of cold-traffic clicks watch long enough to see the offer? Under 40% means the hook or pre-frame isn't landing.
- Close rate of shows. What percentage of VSL viewers click to buy? Under 5% on a $497 offer or under 2% on a $2K cohort means the offer or the close is broken.
- Refund-adjusted CPA. What's the real cost per buyer after the 28-day refund window? Platform-reported CPA is flattering. Refund-adjusted is real.
These three signals are the greenlight. 5.4M views on a YouTube pilot told Perell the same thing $1,500 of paid spend tells you: audience wants this, offer lands, scale it.
The greenlight system costs $1,500 and 30 days. Most creators spend $15,000 finding out the show doesn't work.
We turn away multiple brands a week. On purpose.
For most of our first stretch running Tegra, we didn't.
Here is an ugly truth for most agencies (including us in the past): brands showed up with budget and a credit card, and we found a reason to say yes. Revenue is revenue. The pipeline math felt obvious.
It wasn't.
Here's what we kept signing:
The account already in great shape. Nothing structurally broken, decent ROAS, a competent operator already inside it. We'd come in, tidy the edges, and produce a 5% lift that nobody could feel. We were getting paid to not break things.
The brand where we weren't confident we could move the number. Sometimes the product, the margins, or the market just isn't there. We knew it on the audit call. We signed anyway and spent six months proving ourselves right.
The brand not ready for Google Ads. No clean conversion tracking, a landing page that loses 70% of clicks, a fulfillment problem upstream. Spend isn't the lever for that brand yet. We took the retainer and watched paid traffic expose every crack they hadn't fixed.
And the brand under our minimums, where the account-load math never works and someone on the team quietly resents it for a year.
Every one of those is a wrong-fit engagement. And wrong fit doesn't fail loudly. It fails slow.
Here's the mechanism nobody tells you when you start an agency.
A wrong-fit client doesn't just underperform. It taxes everything around it.
It pulls senior review hours away from the accounts that are actually compounding. It generates the awkward monthly call where you explain why flat is fine. It produces the churn 5 months later that you saw coming on day one. And it teaches your team that the work doesn't reliably win, which is the most expensive thing an operator can come to believe.
You're not just losing on that account. You're taxing the whole portfolio to carry it.
So we built a real qualification gate. Four questions, asked before we send a single proposal:
- Is the account already in good shape? Then we're the wrong call.
- Are we genuinely confident we can move the number? If we're hedging on the audit, that's the answer.
- Is paid the actual constraint right now, or is it tracking, the offer, or the page? If it's upstream, spend makes it worse.
- Does this clear our minimums without straining account-load? If the math only works when someone overextends, it doesn't work.
A no on any one of those is a no on the whole engagement. We say it on the call now, with the reason, and we point them at what they actually need first.
The first few times, saying no to live revenue felt insane. Three of us run this. Turning away a signed retainer is not a small feeling.
Then the second-order effects showed up.
Profit went up, not down, because the accounts we keep are ones we can genuinely win, and winning accounts renew, refer, and expand. Stress dropped, because we deleted the standing dread of the call where you defend mediocre numbers. Every account started stacking wins, because we stopped diluting senior attention across engagements that were never going to move. And the team got happier, because nobody likes spending their week on the account they knew was wrong on day one.
The brands we turn away aren't getting a worse deal. A wrong-fit engagement loses for everyone in it. We just stopped being the agency that takes the money anyway and lets both sides find that out in month six.
Fit-first beats taking anyone with a credit card because the credit card was never the constraint. Our attention is. We only have so much senior review to spend, and every wrong-fit client is attention we're not giving to a brand we can actually move. As well as helping us to make promises we can actually deliver.
Most agencies clock out at 5pm. During the biggest sales weeks of the year. Here's what "caring more" actually looks like.
What a typical agency gives you:
- 1 media buyer managing 15+ accounts
- 10 changes per month across the whole account
- Weekly report that's the same template with different numbers
- Response time: "we'll look into it first thing Monday"
- Clocked out during your biggest revenue days
Here's what Tegra looks like:
ROAS drops 0.3 points? We're investigating within 30 minutes. Not because an alert went off. Because we're already in there.
Ad disapproval at 9pm on a Thursday? Fixed and re-approved before the client checks their phone in the morning.
Checkout page breaks during a promotion? We're on a call with the dev team at midnight coordinating the fix. Client finds out after it's already resolved.
Here's the part no system covers: caring. You can't automate it.
We built AI systems that watch accounts 24/7 and flag anomalies the moment they happen. But the systems don't fix the problem. We do. At midnight. On weekends. During holidays.
When a client's account is bleeding money and they don't know it yet, going to sleep isn't an option for us. We've tried. It doesn't work.
Every account gets the same person who built the strategy, executing it daily. No handoff. No rotation. Same brain, same context, same obsession.
The software is real and it's good. The edge underneath it is simpler: we give more of a damn than the team that clocks out at 5.
Everyone's hyped about Meta MCP and CLI tools. Sorry to bring you the red pill. We measured both. Using the full Graph API won every single read.
I and @andreilunev integrated the Meta API through Graph a few years ago. Way before the recent CLI and MCP release. So we were interested to test the "old" setup vs the new shiny CLI.
We instrumented our actual Meta ad pipeline - every wrapper function, CLI vs direct Graph, live-measured on real accounts.
Graph won every read. Nothing was slower. Two CLI calls didn't just lose - they timed out past 180 seconds and failed outright.
The one that mattered most: pulling per-ad insights across 120 ads.
CLI enumerate-and-loop: 10-30 minutes.
Same data, one Graph call with field expansion: 16 seconds.
20-60x depending on account size.
Here's the part the MCP excitement fades.
A CLI is one process, one auth handshake, one request per invocation. To get insights for 120 ads it lists the ads, then loops - one round trip per ad. That's the N+1 problem wearing a friendly prompt.
The Graph API has the primitive the CLI hides from you: batching and field expansion. You ask for the ads, creatives, and insights in one nested request. One round trip. The server does the join.
The CLI can't expose this. Its whole model is one-command-one-call.
That's why the abstraction feels great and scales badly. MCP and CLI optimize for the first call being easy. The Graph optimizes for the thousandth call being cheap.
At demo scale you never feel it. At scale where dozens of accounts managed - it makes a big difference.
Most brands think scaling = spend more on what's working.
That has limits. Audiences exhaust. CPCs rise.
Real scaling = finding new audiences we didn't know existed.
Two brands in our portfolio right now.
Brand A: 0.89x ROAS. 98/98 campaigns underspending. Bleeding $3,326/week. Delivery in a death spiral.
Brand B: 355 active ad issues. Feed warnings stacked up. 3.24x ROAS.
Same team managing both. Same platform. Same campaign types.
The difference? Brand A sends ad traffic to product pages. Brand B sends it to an ecosystem - intent-matched landing pages, comparison content, email capture for non-buyers, 7-email follow-up sequences.
We monitor 15+ brands daily through our internal system. The pattern is so consistent it's boring:
Brands with post-click ecosystems average 2.8x ROAS.
Brands without them average 0.4x on the same ad quality.
That's 7x. Not from better ads. From what happens after the click.
@eCom_Amin nailed it: "the gap between 2% and 10% CVR is almost never the ad." We see the proof of this in real-time. A brand at 2.1% CVR pays $142 per customer. A brand at 9.4% CVR on the same traffic pays $31.
95% of visitors leave without buying. Most brands wave goodbye forever. The ones printing 3x+ ROAS capture those visitors and convert them over days through follow-up sequences.
Being a developer who became a marketer is an unfair advantage right now.
Not saying this to gatekeep. Just explaining why the outputs are different.
The combination is rare:
Most developers don't understand marketing. They can build anything but don't know what to build.
Most marketers can't code. They see opportunities but can't execute without hiring.
I spent 8 years writing code. Then 8 years in performance marketing.
That dual background means I can see a marketing problem and build the solution myself.
No waiting for dev teams. No translating requirements. No compromise between vision and execution.
AI makes this exponentially more valuable.
The tools exist now to build systems that were impossible 2 years ago. But building them still requires understanding both:
- what marketing problems need solving (marketer brain)
- how to architect automated solutions (developer brain)
One without the other isn't enough.
We can automate 90% of what agencies charge for. Feed writing. Ad copy. Landing pages. Validation.
Not because we have a bigger team. Because we can build what others only imagine.
The gap is widening.
Teams that can both identify opportunities AND build solutions are pulling ahead. Everyone else is waiting on agencies or dev teams.
This combination matters more now than ever.
If you have both skills, use them. If you don't, find someone who does.
Spending $30K/month on Meta, ROAS getting worse, thinking about YouTube? Don't start with campaigns. Start with creative methodology.
Same 8 direct response principles that fix your Demand Gen images also power your YouTube scripts. Get the creative engine working first. Validate with a $3,500 test. If it works, branded search lifts and cheaper retargeting within 14 days. If not, you're out $3,500 instead of $30K.
Most brands do the opposite. Launch with repurposed Meta creative, measure platform ROAS in isolation, see a bad number, quit. The CFO now has a data point: "YouTube doesn't work for us." That anchor is almost impossible to dislodge. The real cost isn't the budget burned. It's years of $0.49 CPCs left on the table because one bad test created a false conclusion.
Score creative first. Validate cheap. Scale what works.
https://tegra.co/store/google-ads-demand-gen-youtube-system
For some brands AOV is stuck because of selling products, not offers.
After building offer pages for 40+ e-commerce brands, here's the system that turns single-product pages into AOV machines.
Most brands think bundling means "put three products together and offer 15% off."
That's a discount. Not a strategy.
Customer lands on a product page. Buys one item or bounces. AOV sits at $55-75. Everyone blames the product or the ads.
The product isn't the problem. The page is. A standard product page creates a binary decision: buy or don't buy. An offer page with three tiers creates a selection decision: which option fits me?
That single shift - from buy/don't-buy to which-one - changes everything downstream.
Five cognitive mechanisms make bundles work. None of them are about saving money.
A skincare "routine" is worth more than three random products. Brands that named bundles as systems or protocols instead of product counts saw 25% higher conversion on the same items at the same price.
Three options replace the overwhelm of choosing from 200 products. Tiered pages convert 2.3x better than standard product pages because you're making buying easier, not selling harder.
And the decoy effect - the premium tier's job isn't to sell. It's to make the mid-tier feel smart. 60-65% of customers choose the middle option when pricing is structured correctly.
Three tiers. Always three. Two creates cheap vs expensive. Four reintroduces decision fatigue.
Here is a structure that works for us:
- Starter (20-25% of sales) - hero product plus one essential complement. Entry point into the bundle ecosystem. Discount: 10-15%.
- Complete (55-65% of sales) - hero plus essential plus enhancement. This is your target tier. Where the margin lives. Discount: 20-25%.
- Pro (15-20% of sales) - everything plus premium additions. Anchors Complete as reasonable. Your highest-LTV buyers self-select here. Discount: 25-35%.
The gap between tiers matters more than the prices themselves. Complete should cost 60-80% more than Starter while delivering 100-150% more perceived value.
Most brands list bundle contents like a grocery receipt. Three items and a price. The customer's internal calculation: "Is this reasonable?" And they go check Amazon.
A value stack reframes the same bundle:
Show individual retail prices. Show the total. Show the bundle price. Show the savings as a dollar amount.
The customer processes the individual total before seeing the bundle price. That anchoring gap is where the conversion happens.
Loss framing amplifies it. "Buying individually costs you $26 more" outperforms "Save $26 with the bundle" by 10-20% in split tests. Same math, different psychology. The pain of overpaying is roughly 2x stronger than the pleasure of saving.
Dedicated offer pages convert paid traffic 2-4x better than standard product pages. Every element serves one job: move the visitor toward a tier selection.
Hero section with the outcome, not your brand name. Problem section using actual customer language from reviews and Reddit. Tier comparison table with the Complete tier pre-selected and visually emphasized.
Value stack showing itemized savings. Social proof from bundle buyers specifically. Legitimate urgency only. Guarantee that removes the final barrier. Second CTA to close.
Pre-selected options get chosen 2-3x more often. That's the default effect. The Complete tier should be highlighted, enlarged slightly, and badged "Most Popular" from day one.
The data across 50+ accounts:
AOV up 30-45%. Bundle buyers have 40% higher lifetime value. Return rates drop 25%. CPA falls 35% because the conversion rate lift means your ad spend stretches further.
Same products. Different architecture. AOV isn't a fixed number. It's a design choice.
Start with your best seller. Find the products customers already buy alongside it. Build three tiers. Calculate your decoy score. If the value gap grows 2x faster than the price gap from Starter to Complete, you've got a winner.
We cut our operational costs by 75% without cutting corners, meanwhile bringing 50x more value to the brands we work with - thousands of creatives and dozens of presell pages per month.
Here's the breakdown by function.
Cost area 1: Feed management.
Before AI systems: feed specialist at $65K/year handling 12 brands. At 13 brands, we needed a second specialist. Linear cost curve.
After: feed pipeline runs across all 50+ brands. Cost per brand: API expenses only, roughly $20-30 per brand per month. Annual cost for feed management went from $65K+ to under $2K in API fees.
The quality actually went up. The 152-point validation catches issues that human reviewers miss when they're reviewing their 400th product title.
Cost area 2: Reporting.
Before: 6 hours per week building reports. At $75/hour fully loaded, that's $23,400/year on report generation.
After: one command generates all reports in 12 minutes. Annual cost: effectively zero (compute time). The reports pull from 7 channels instead of the 3-4 we could reasonably cover manually.
Clients didn't notice the change in production method. They noticed the reports were more comprehensive. Several specifically mentioned the anomaly callouts as valuable. We never had those in the manual reports.
Cost area 3: Ad copy production.
Before: copywriter + account manager collaboration. 4-6 hours per brand per week for RSA refreshes, feed copy updates, and presell page variants. Across 50 brands, that's 200-300 hours per week.
After: generation pipelines produce copy from competitive research and keyword data. Review time: 20-30 minutes per brand per week. From 300 hours to 25 hours. 90% reduction.
The key wasn't just generating faster. It was generating from better inputs. The system uses competitive intelligence data, keyword cluster analysis, and brand voice guidelines that no human copywriter could hold in working memory simultaneously.
Cost area 4: Client communication.
Before: responding to ad-hoc data requests. "What was our ROAS last week?" "Why did CPCs go up?" "Can you pull the search term report?" Each question: 15-30 minutes to pull data, format it, write the response.
After: automated weekly summaries with threshold-based alerting. Clients get the data before they ask. Anomalies are explained in the summary.
Client email volume dropped 60%. Not because clients are less engaged. Because the proactive summaries answer the questions before they're asked.
Total operational cost reduction: 75%.
The math: before AI systems, our operational overhead per account was over $2,000/month (time, tools, and overhead allocated). After: approximately $320/month per account.
That $1300/month savings per account across 50 accounts is now pushed towards creating 10,000+ ads and 300+ presell pages per month. Win for clients = win for us.
The uncomfortable truth: most of what agencies bill for is execution that follows repeatable patterns. If your marketing team's competitive advantage is "we do the repetitive work diligently" - maybe it's a good time to consider better options.
Most brands test 3 ad creatives. We test 50+. Same budget.
Usually brands hire a designer. $200 per image. Get 3 polished concepts in a week. Upload them to PMax, run for a month, and conclude "ads don't work for this product."
But it's only 3 tested options. That's not a test. That's a coin flip.
We generate 100+ variations in an afternoon. Cost: $40. Time: 2 hours. And here's the part that matters - we're not looking for the "perfect" ad. We're looking for the one PMax's algorithm picks as a winner.
Big difference.
PMax works by matching creative assets to audience signals. More assets mean more combinations for the machine to test. Three images give the algorithm almost nothing to work with. A hundred gives it room to find patterns you'd never predict.
(Spoiler: the winner is almost never the one we'd pick ourself.)
If you've spent any time in feed optimization, you already know this principle. More complete product data = more visibility. More attributes = more queries matched. Same logic applied to creative - more inputs, more chances for the algorithm to surface what converts.
Here's what a weekly cadence looks like:
Monday - generate 100+ variations across 5 angles. Aspirational, technical, social proof, value, problem/solution.
Week 1 - broad test at $50/day. Identify which angle converts.
Week 2-3 - kill everything except the winning angle. Generate micro-variations within it.
Week 4 - scale the top 3 performers.
We run this cycle monthly. The creative pipeline stays full. The data stays fresh.
The brands winning on Shopping right now aren't making better ads. They're testing at a volume and speed their competitors can't touch.
After testing dozens of YouTube ad creatives, 3 formats consistently outperform everything else for us.
Here's what they are, why they work, and how we build them for the brands.
5 rules before we get into formats:
1. We have 2 seconds on Shorts, 5 on in-stream. Hook or die.
2. Avoid polished commercial-style production. The best ads don't look like ads.
3. Lead with value - education or entertainment first, product second.
4. Build natively for each format. Vertical for Shorts, horizontal for in-stream. We never repurpose without reformatting.
5. One idea per ad. One pain point. One benefit. One outcome.
The 3 formats that are printing right now:
Format 1: Interview-style with the creator.
We open with an insight or claim. The creator explains 2-3 key benefits conversationally. Casual transition to the product. Soft CTA at the end.
Why it works: feels like advice from a friend, not a sales pitch. The trust transfer from the creator's audience to the brand is the mechanism.
Format 2: Founder hook with pattern interrupt.
We start with a bold visual or controversial statement in the first 2 seconds. Explain the problem with the standard option. Position the product as the better alternative. End with a strong CTA and offer.
Why it works: the pattern interrupt stops the scroll. The founder's directness builds brand personality. Works consistently well for cold audiences.
Format 3: Testimonial-style UGC.
Personal statement opening. Explain the specific result. Mention product casually. End with social proof.
Why it works: authenticity. Minor imperfections - ums, pauses, natural lighting - actually increase trust. This format has the highest conversion rate across audience temperatures.
Script structure for all three:
Hook (0-2s) - Problem (2-8s) - Solution (8-15s) - Proof (15-25s) - CTA (last 5s)
Benchmarks to aim for:
- View Rate: 20%+ in-stream, 8-10% Shorts
- CTR: 6%+ is strong
- CVR: 5-15% depending on AOV
- CPC: Under $2
- CPM: $6-8 for consumer goods
Research tools: Google Ads Transparency Center (free), SERP APIs (paid), and SEMRush Social Analytics. We look for repeating hook styles, common benefits highlighted, and CTA wording patterns.
We don't copy what we find but remix it through the brand's voice and positioning.
We've audited dozens of accounts from "top-tier" agencies. The findings are depressingly consistent. Here's what we keep finding.
The common audit findings:
PMax is running with zero audience exclusions. Existing customers, recent purchasers, newsletter subscribers - all getting served acquisition campaigns. The agency was paying to acquire people who had already bought.
Default Shopify feed titles. "Blue Widget - Small" across thousands of products. No search intent keywords. No brand positioning. Just whatever Shopify auto-generated.
No prospecting structure. Everything is lumped into one campaign. New customers and returning customers are competing for the same budget with no way to tell which is which.
Tracking is broken across the board. Conversions double-counting. GA4 not matching Google Ads. Server-side tracking is misconfigured. The data the agency was "optimizing" against was wrong.
Why does this keep happening:
It's not malice. It's the business model. The person on the sales call has 10 years of experience. The person running your account has 4 months.
Want to know if your account has these problems? Check five things in 10 minutes:
- open PMax and look for brand exclusions
- compare your product titles to what Google shows in the Shopping tab
- check if your search campaign has been changed in the last 30 days
- look at whether your agency's 'optimizations' include worthless $0.10 bid adjustments.
Google can't tell your $100K deal from your $5K deal. By default it bids on both like they're worth $1.
Here's the part most teams miss.
Smart Bidding is a regression model. It optimizes toward whatever conversion value you hand it.
Hand it nothing, and every form-fill is worth exactly 1.
So the bidder learns which keywords, audiences, and devices produce the most form-fills. Not the most revenue.
It will happily pour budget into the segment that books cheap demos that never close, because to the model, a tire-kicker and an enterprise buyer are the identical event.
The fix is wiring CRM closed-won value back to the bidder. Offline Conversion Import plus Enhanced Conversions for Leads. The value you upload is the actual deal amount, not "1 lead."
That's when tROAS finally bids on revenue truth instead of demo count.
Across the SaaS accounts I audit, the same misconfig repeats: offline conversions are firing, the team thinks the loop is closed, but every record carries a flat value. The wire exists. It's just carrying a constant.
A closed loop that uploads the same number on every deal is value-blind. It just looks solved on the dashboard.
Now the deadline.
The GCLID-only path most teams built this on, the UploadClickConversions API endpoint, is being deprecated June 15, 2026. Google's Data Manager API (live since December 9, 2025) is the replacement.
Two more things that quietly break this loop:
Google keeps a GCLID for only 90 days. If your sales cycle runs longer, the click is gone before the deal closes, and the conversion never matches back. Enhanced Conversions for Leads (hashed email, 63-day window, value-adjustable up to 55 days) is what survives a long B2B cycle.
And in the EEA, Consent Mode v2 silently discards offline records that arrive without consent flags. The upload succeeds. The record never lands.
Google's own published number: Enhanced Conversions for Leads plus offline import returns about 10% more measured conversions than GCLID-only.
Here's the contrarian part. "We have offline conversions set up" is not the same as "our bidder optimizes on revenue." Most SaaS teams I see have the first and assume it means the second.
The nexum thesis, plainly: Google sees form-fills. Salesforce sees closed-won. The two never talk by default. The wire between them is the actual work, and right now that wire has a migration deadline on it.
If you want to see which side of this your account is on, the free AI Max Audit (tegra.co/agents/google-ads-agent) flags whether your offline conversions fire pipeline-value-weighted or just demo-booked. The full rebuild (Data Manager API migration, value mapping, the ECL hashing layer) is what the Google Ads AI Agentic System runs end to end.
I'm migrating three accounts off UploadClickConversions before the cutoff. The build is two days. Getting RevOps to expose the right closed-won field is the part that takes a week.
YouTube Ads Manager says 0.8x ROAS. The truth: 2.4x. Here's why it lies.
YouTube uses last-click attribution by default. That means it credits whoever closes the sale - not whoever started the journey.
Here's what actually happens:
Customer sees your YouTube ad. Doesn't buy. Googles your brand name two days later. Clicks a branded search ad. Doesn't buy. Sees your Meta retargeting ad. Clicks. Still doesn't buy. Goes directly to your site a week later. Buys.
Who gets credit? Direct traffic. Maybe branded search.
Who started that entire journey? YouTube. But YouTube shows 0 conversions for that sale.
This isn't a minor reporting gap. This is structural.
Haus.io ran 190 incrementality tests across multiple brands. YouTube drove 3.4x more incremental revenue than what Google Ads reported. The iROAS improved 80% in the post-test window alone - meaning there's a long tail of impact that platform reporting completely misses.
I see this pattern in every YouTube account I audit. Platform ROAS runs 40-60% lower than true ROAS, every time.
I almost killed YouTube for a client based on platform reporting. When I checked TripleWhale, YouTube's actual ROAS was 2.9x - not the 0.7x Google Ads showed. Every dollar I'd planned to cut was generating $2.20 nobody could see in the dashboard.
(That was the fastest I've ever reversed a budget decision.)
The fix isn't complicated. You need attribution software that tracks the full journey:
- Converge: $200-1K/month, tracks every touchpoint
- Triple Whale: $200-400/month, great for Shopify
- Northbeam: $500-1K/month, strong multi-touch
These tools pay for themselves 10x over. Without one, you're making budget decisions on fictional data.
Every client I've installed multi-touch attribution for has found the same thing: YouTube was their best acquisition channel the whole time, hiding under last-click. The client I almost cut is now my biggest YouTube spender.
Your YouTube is probably 3x better than your dashboard says.
Are we having fun in marketing, guys?
Here's last week's pre-sale page output:
164 written. 152 deployed straight to Shopify via API.
The breakdown:
34 advertorials
30 guides
23 listicles
23 comparisons
23 problem-solution
15 reviews
6 social proof
5 editorials
4 landers
1 story
Written, formatted, and pushed live through Shopify's API.
Not a single manual upload.
Not a single copy-paste into a CMS.
Here's what an agency would quote for the same job: 8-12 weeks, a team of 15, and an invoice north of $50K.
What actually happened: me and @andreilunev, one week, every page type, live in production.
One solid operator running AI systems now does what 10-20 people did a few years ago. I see it across every account @hellotegra manages.
- Competitor research runs weekly on its own
- Alerts and monitoring run 24/7
- Reporting writes and schedules itself
- The page generation and the Shopify deployment both run through systems, so the human time goes into judgment, not production.
We don't hire our way to scale - we build our way there.
The operators who refuse to build these systems are running accounts with one hand behind their back. The ones who do are managing 5x the accounts they handled two years ago, same quality, WAY more creative output.
If you're spending $30K+/mo on Meta or Google and your agency is giving you monthly reports and vibes instead of daily execution, we should talk.
Here's what changes when both founders personally execute your account.
Live in 3 days, not 21. Hundreds of new creatives per week, not per quarter. Campaign deployment through the API at speeds manual work can't match. Daily Slack so you're never guessing what happened to your budget. Bi-weekly strategy calls where both people on the call are the same people inside your account every day.
Month-to-month. No setup fees. No contracts. You own everything from day one.
Recent results: $800K to $2.1M in 90 days. CPA down 40%. ROAS from 1.6 to 3.8. Live numbers from accounts we manage right now.
Every month with the wrong partner is compounding underperformance you can't get back. The spend leaves your account either way. The only question is what it comes back as.
https://tegra.co/work-with-us
Every brand targets 25-34 on YouTube. The real money is in 60+.
People over 60 control $70 trillion in global wealth.
Average net worth for 65-74 in the US: $1.79M. Median: $410K. Discretionary spending: $6,000-8,000 per month. Paid-off mortgages. Zero student debt. No kids to support.
Now here's where it gets interesting.
They grew up watching TV commercials as part of the show. Not skippable. Not optional. Just part of the experience.
So when they see a YouTube ad, they do something your 25-year-old target audience never does.
They watch the whole thing.
No second screen. No Clash Royale on the side. No muting while they scroll Instagram. Full attention for 15-30 seconds straight.
(Adults 60+ account for 15% of total YouTube viewership - the largest single consumer demographic. That share has more than doubled in recent years.)
Then watch what they do after the ad ends.
A 25-year-old sees your $67 product. Opens 8 tabs. Reads Reddit threads. Watches comparison videos. Asks friends. Sleeps on it. Maybe buys in 3 days.
A 65-year-old sees your $67 product. Ad explains the solution. They buy right then.
They're not digitally native. They don't know how to efficiently comparison shop online. They trust the first credible thing they see on video - because that's how television worked for 50 years.
Most money. Longest attention. Shortest purchase funnel. Most trust in video.
And almost every brand I audit targets 25-44 exclusively.
You're fighting over people who mute your ads, open 8 comparison tabs, and have $847 in their checking account. Meanwhile the richest demographic on the platform is sitting there with full attention and a credit card ready.
Not a complex fix. I change the age targeting and test a creative built for their actual problems - the CPA usually drops on the first pass.
Most e-commerce brands have a Google Ads funnel with no top.
We audited 30+ accounts last quarter. The pattern was depressingly consistent.
Brand search doing 6-8x ROAS. Non-brand? Either nonexistent or bleeding money with no strategy behind it.
Google is the one platform where you can convert cold traffic on the first visit. Someone typing "organic protein powder for runners" isn't browsing. They're buying.
But you need a system.
The TOF machine has 3 layers:
1. Shopping campaigns targeting non-brand product searches. Your feed quality is everything here - titles, images, pricing. This is where most of your cold acquisition happens.
2. Search campaigns on high-intent long-tail keywords. Think "buy X," "X with free shipping," "best X for Y." Start exact match, then add 1-2 broad match per ad group to discover new terms.
3. After 90 days of data, build similar audience targeting. Use your converters as the seed. This is where you expand without guessing.
The mistake we see constantly: brands jump straight to PMax for prospecting. PMax is great - after you know what works. It needs training data from campaigns that already convert.
Start with Search + Shopping. Find your winners. Then feed those patterns into PMax and YouTube.
One of the accounts we manage went from $40k/mo to $100k+/mo in 60 days just by building layers 1 and 2. Same margins. They weren't bad at Google Ads - they just didn't have top of funnel.
Set your tROAS 20% below your profitable target.
Need 2x to be profitable? Set it at 1.6x.
Feels wrong. It's not.
At exact-profitable, the algorithm gets too conservative and kills volume. Give it room to explore. Overall ROAS still lands above breakeven.
"Isn't bidding on competitor names illegal?"
No. Google's policy: "We don't investigate or restrict trademarks as keywords."
SaaS companies have done this for years. E-commerce is catching up.
We can't use their name in ad copy. But we can show up when someone searches for it.
You don't need 500 keywords to start Google Ads. You need 5.
Five seed terms for your core products. Exact match. Review search terms after week 1. Add what converts. Negative what doesn't.
This screenshot is why most Google Ads accounts plateau at $50K/month.
$150 a day. Pure GPT Image generation. Just for Google Ads.
Each ad creative costs us 5 cents to render. Do the math. 3,000 unique ads per day. Aimed only at Google.
Here's the part most agencies won't say out loud.
PMAX doesn't scale on bids. It scales on creative volume aimed at cold audiences.
The "upload 20 assets, set a budget, let Google figure it out" playbook hits a ceiling fast. Once Google chews through your library, performance flatlines.
The algorithm just spends harder on the same fatigued combinations (and your CPA quietly doubles).
PMAX's machine learning needs raw material to keep finding new pockets of demand. Feed it 10 creatives a month and it spends inside a tiny audience graph.
Feed it 100 a day and it goes hunting in places your manual campaigns can't reach.
That's why we treat creative production like infrastructure, not a deliverable.
Every single creative gets its own brief. Hook, angle, emotional pull, format, audience hypothesis. No "make 50 variants of the same image." No batch slop.
Each asset is generated against a specific buyer state at a specific funnel stage.
That's what 5 cents per render actually pays for.
Not volume for volume's sake (we don't need more dashboards). Volume that's targeted, briefed, and measurable.
Which is why our PMAX accounts scale past the wall most agencies hit somewhere around $50K/month.
Brand campaigns don't scale you. Feed optimization scale you to some extend. A creative engine producing thousands of creatives pointed at cold audiences on Google does.
Had 8-figure brands reach out for an audit last month.
They are working with a "top-tier" agency paying $15k+/mo retainers.
First account we opened:
- Brand name as a targeting keyword in non-branded search.
- PMax burning budget on existing customers with no exclusions.
- Shopping titles still default Shopify descriptions.
These agencies have incredible websites. Polished case studies. Senior strategist titles.
The space is really good at "looking good".
But actual delivering? Quite often, it's junior mediabuyers hired 2 months ago
Two hours per competitor to manually outline what they're running. I need to update it for 15 brands. Math wasn't mathing.
That's why we have the system.
SERP APIs scrape every live Google ad variant in the market - headlines, descriptions, sitelinks, callouts, landing pages, the full creative inventory across every keyword cluster. Meta Ad Library pulls every active creative, the landing page behind it, the refresh cadence, and how long each variant has been spending against impressions.
An agentic loop normalizes the corpus, scores positioning against the competitive set on a 100-point differentiation index, flags new entrants since the last refresh, and surfaces the angles nobody in the set is running yet.
One sweep: ~5,000 Google ads + ~9,000 Meta ads, analyzed across 19 brand×market combinations.
What used to be 2 weeks of analyst work, done in the time it takes to make coffee.
The screenshot above is the actual output from this morning. Differentiation Score per brand. Blue Ocean band per market. Notes on what shifted since the last refresh - "Tide launched 132 new ads since prior" is the line that changes how we run Shopping for a brand competing in the same SKU. "Sephora Meta 3→49" tells us a category leader just multiplied their creative volume across one market by 15x.
Every Google and Meta campaign me and @andreilunev write for the brands we run at @hellotegra starts from this output. We read the differentiation snapshot, then the per-brand notes, then we open the underlying creative library to look at what the new entrants are actually testing.
The bidding strategy, the creative angles, the negative keyword work, the audience structure - all of it sits downstream of what the competitive set is doing this week.
When a competitor refreshes 130 ads, the auction shifts. When a category leader multiplies their creative output 15x, the cost curve moves. A strategy that ignores the live competitive set is a strategy that's solving a problem from 90 days ago.
This is the layer most performance teams skip because the manual version doesn't scale past two or three brands. Three of us run that depth across all the brands every week because the system above does the analyst work.
After 100+ Google Ads audits, the #1 finding isn't what someone would expect.
It's not bid strategy. Not ad copy. Not audience targeting.
It's broken conversion tracking. In 40% of accounts.
Here's why this is worse than you think:
1/ Smart Bidding runs on conversion data. It's the entire signal.
When your tracking is wrong - duplicate events, missing values, wrong attribution windows - Smart Bidding optimizes toward noise.
It doesn't know it's wrong. It just does what it is told to do.
2/ The common failures we find:
- Duplicate purchase events (counting one sale as two)
- Missing conversion values (tROAS has nothing to optimize toward)
- Wrong attribution windows (claiming credit for organic)
- Tag Manager containers with conflicting triggers
Each one quietly destroys campaign performance.
3/ Here's the part that stings:
Teams spend months testing headlines, adjusting bids, restructuring campaigns. All on top of bad data.
That's not optimization. That's expensive guessing with extra steps.
4/ The fix isn't complicated. It's just boring.
Audit GTM container. Verify events fire correctly. Check for duplicates. Validate conversion values match actual revenue.
Takes a few hours. Saves thousands per month.
5/ After 100+ audits, this is the pattern:
Fix tracking first → Smart Bidding starts working → "sudden" performance improvement.
It wasn't sudden. Tracking just stopped lying to the algorithm.
Google Display Ads get a terrible reputation.
Mostly because 90% of people set them up terribly. Here's how we actually make them work for e-commerce.
First - when to use Display:
- Brand awareness for new product launches
- Retargeting visitors who didn't convert
- Promoting sales and flash offers
- Expanding reach beyond Search and Shopping
When NOT to use Display: as the primary conversion channel for cold traffic. That's Search and Shopping's job.
The targeting mistake everyone makes: picking one audience type and calling it done. Display requires layered targeting.
Here's how we layer it:
Primary layer: choose the main audience type. In-market audiences for active shoppers. Affinity audiences for broader awareness. Remarketing for warm traffic.
Secondary layer: add demographic filters. Age, gender, income bracket. This narrows your reach to people who actually match your buyer profile.
Third layer: Placement controls. This is the one most people skip. Exclude mobile gaming apps (they eat budget with accidental clicks). Exclude low-quality content farms. Use managed placements for channels and sites we know perform.
Creative rules:
- Product image front and center. Logo optional if space is limited.
- One clear CTA button with contrasting color.
- Keep text minimal. The image does the selling.
- Optimize for every ad size - don't just upload one and let Google resize it.
Dynamic remarketing is where Display earns its keep. Show people the exact products they browsed. The conversion rates on dynamic remarketing are 2-3x standard Display because the creative is already personalized.
Frequency caps: set them at 3-5 impressions per user per day. Without caps, you'll show the same ad 20+ times to the same person and tank the brand perception.
Budget tip: start Display remarketing at 5-10% of the total budget. It's the highest-ROI form of Display and the safest place to start.
We track view-through conversions separately from click-through. Display often influences purchases that show up in Search or Shopping campaigns. If we only measure last-click, Display will always look like it underperforms.
We've built or restructured lots of PMax campaigns across 160+ e-commerce accounts.
The pattern is painfully consistent: brands following Google's default PMax setup waste $3,000-15,000 per month.
Here's the architecture that took median ROAS from 2.1x to 3.2x in 60 days:
Google's default recommendation: one PMax campaign for everything.
80% of accounts follow this advice. Cold traffic, remarketing, prospecting - all blended.
Google likes this because it maximizes their control. We hate it because it hides what's actually working.
The first thing we check: data density.
PMax needs 30+ conversions/month to function. Below that, the algorithm is guessing.
We've seen accounts with 10 conversions/month lose 40-60% of budget to non-converting placements. Three months in and still in "learning mode."
If we're under 30 conversions, we use Standard Shopping first. Build the data. Then migrate.
The architecture that actually works (for accounts spending $10K+/month):
Campaign 1: Feed-Only PMax (50-60% budget) - Shopping and Search placements
Campaign 2: Demand Gen PMax (25-35%) - YouTube, Gmail, Discover
Campaign 3: Remarketing PMax (15-20%) - warm traffic only
Separate by traffic temperature. When everything lives in one campaign, remarketing inflates ROAS and cold traffic hides behind it.
The account showing "4x ROAS" was actually 1.5x cold and 12x remarketing. The blended number lied.
Headlines and descriptions written for the specific audience outperform generic copy by 2-3x CTR.
Based on GOOD/BEST asset labels across 80+ campaigns we've managed to improve it dramatically.
We run an 80-image strategy across all asset groups. Not because more is always better - because the algorithm needs material to test. We want it choosing between strong options, not recycling weak ones.
Never launch tROAS on a new PMax campaign.
The 8-12 week warmup protocol:
Weeks 1-4: Maximize Conversions. Let the algorithm learn.
Weeks 5-8: Introduce conservative tROAS (below your target).
Weeks 9-12: Tighten to actual target.
Skip this and you're teaching the algorithm with insufficient data. It'll either spend nothing (target too high) or waste everything (no baseline to optimize from).
Brand exclusion is non-negotiable.
Without it, PMax claims credit for branded searches that would've converted anyway. The ROAS looks amazing. But incrementality is a different story.
We've seen brand exclusion reduce CAC by 20-60% across accounts we manage.
The branded traffic still converts - it just routes through your branded Search campaign where it belongs.
Don't choose between Standard Shopping and PMax. Run both.
Standard Shopping for core, high-volume products where we want control and full search term visibility.
PMax for incremental reach and new audience discovery.
PMax wins 60% of impressions over Search. But Search converts better 85% of the time. They're complementary, not competitive.
The summary:
- 30+ conversions/month before launching PMax
- Multi-campaign architecture, not one campaign for everything
- 8-12 week bidding warmup (never launch tROAS cold)
- Brand exclusion from day one
- Standard Shopping + PMax together
- Daily monitoring for the first month (yes, daily)
"Set and forget" PMax is a myth that costs brands thousands every month.