N
Novyra
Engagement Dashboard
Last Updated
In Market

We are driving cost per paid signup, not cheap Instant Form leads.

Last week the account spent more on its cheapest-lead ad than on its best-signup ad. S1_Night_search had the lowest cost per lead in the account at $2.67 and the second-worst cost per signup at $73.35 — and Meta’s budget optimiser kept feeding it, because it optimises to leads, which is not what we are buying. S1 is paused as of Sep 8; S2 has been off since Sep 3. Lead volume will fall next week on purpose. Two findings inside Novyra’s own product now sit ahead of anything we can do in the ad accounts: the matcher asks for date of birth and does not record it when given, burning a metered chat allowance; and roughly one in twenty-five Instant Form addresses is invalid. On Google, our earlier “renamed event” diagnosis was wrong — tracking is working correctly. Google’s problem is $760 per signup and a policy limit on cancer terms.

Velocity this week: Meta Sep 1–7 ran $2,355.88 on 735 leads — $3.21 cost per lead, against $3.38 on 722 leads the prior week. Attributed signups in the cohort join: 39, a blended $60.41 per signup. By ad: C_dark $34.58, the V3 videos $42.86 and $43.71 on small numbers, PreHealth $64.39, S1 $73.35, S2 $333.81. Budget moved the wrong way before we caught it — S1 took $513.44 (up $361.49 week on week) while C_dark, the best performer, took $449.59 (down $167.29) and PreHealth fell $636.73. Audience Network stayed at $0 and zero leads on every ad for a third week; delivery remains Facebook-majority. CRM recorded 71 real signups dated Sep 1–7 after removing 9 test addresses, 52 of them ad-attributed. Google spent $760.51 for one conversion.

Phase
2 of 2, In-Market
Engagement Start
May 11, 2026
Live Channels
Meta · Google Search
App Signups, All-Time
2,158
as of Aug 31
In-market performance
Live numbers from Meta, Google, and the CRM · Sep 1–7, pulled Sep 8
Meta Cost per Lead
$3.21
vs prior 7d $3.38 (↓ $0.17)
735 leads on $2,355.88, Sep 1–7, against 722 leads on $2,438.25 prior. Audience Network $0 and zero leads on every ad. Cheaper leads is not the goal — see cost per signup.
Cost per Paid Signup
$60.41
vs $50–70 plan · in range
$2,355.88 across 39 attributed signups, Sep 1–7. Method: leads created in-window, joined to the ad that produced them, counted only once a signup date exists. Signup dates trail the lead by days, so the most recent days in any window read high and settle later.
App Signups (Sep 1–7)
71
real, after removing 9 test addresses
80 signup dates landed in the window; 9 were test accounts. Of the 71 real, 52 carry an ad stamp and 19 do not — some of those 19 are likely paid but unstamped, so treat 52 as a floor, not a ceiling.
Google Cost per Signup
$760.51
one conversion on the week
$760.51 across 1,448 impressions and 129 clicks — $5.90 a click, 8.9% CTR. Tracking is confirmed working; the single conversion is real, not a reporting gap. Against Meta at $60 this is a budget conversation, and a separate policy one.
Cost per signup by ad
Sep 1–7 · spend follows signups, not lead price
C_dark_research
$34.58
best in the account
$449.59 → 135 leads → 13 signups. An 11.8% lead-to-signup rate, the highest of any ad. It was losing budget share to S1 last week; that is now corrected.
PreHealth_Control
$64.39
volume leader
$643.89 → 205 leads → 10 signups, a 6.9% signup rate. Carries the most spend and the most leads. Holds its budget.
S1_Night_search
$73.35
paused Sep 8
The cheapest leads in the account at $2.67 and the second-worst signups. 192 leads produced 7 signups — a 5.0% rate against C_dark’s 11.8%. It absorbed $513.44, more than any ad but PreHealth.
S2_Short_list
$333.81
off since Sep 3
90 leads, one signup. Partial week — it was switched off mid-window, so this is a truncated read, but the verdict was already clear. The two V3 videos are the ones to watch next, at $42.86 and $43.71 on small numbers.
Free-use funnel · site + app, Aug 11–Sep 7
Where visitors fall out before signup
GA4

Across all sources, about two thirds of people who start a match never reach a search. From Meta it is roughly three in four. From Google, closer to nine in ten.

We think we know why, and it is not targeting. On a clean first session, using Novyra’s own suggested prompt, the matcher asks for the patient’s date of birth, does not record it when supplied, and asks again. It happened three times in a row in one session — date supplied with gender, then alone, then in plain ISO format. Gender was captured first time; date of birth never was. A chat allows 10 messages and a visitor gets 3 free chats, so this burns roughly a third of the first chat’s allowance before the profile has a single usable field.

Three independent checks now point at the same place: a manual clean-session reproduction, a second reproduction run separately, and the aggregate drop above — which sits exactly where the date-of-birth step sits in the flow. This is downstream of every click we buy, which makes it the highest-leverage fix available: it costs no media budget and it is ahead of anything the ad accounts can do. It is with FiveRivers to confirm and fix.

On the funnel rates: these come from web analytics, where consent declines and ad blockers mean events go uncounted. Read them as directional floors, not exact counts — the real drop-off is at least this steep, not less.

How we drive cost per signup
Operating plan · not a forecast

The order of leverage changed this week. Fixing the date-of-birth loop is now first, because it is free and it sits in front of every click we buy. Then: keep budget on the ads with the cheapest signups rather than the cheapest leads, which is what the S1 pause enforces; give Meta a real signup event to optimise against instead of leads; clean the Instant Form address quality that is producing a 3.9% hard-bounce rate; and hold Google flat while the policy and cost questions are answered separately.

Audience Network stays off. Optimise on paid signups, not lead CPL.Audience Network held at $0 and zero leads on every ad for a third week. Blended cost per signup $60.41 on Sep 1–7, inside the $50–70 plan.
Auto-enrolment is built and working, but paused on deliverability.The enrolment gap was fixed Aug 31 and every new lead enrols at creation with a holdout held out. The workflow then went off Sep 7 on spam rate, and is now also held on a 4.08% bounce rate. It restarts once address validation and suppress-on-hard-bounce are in — which also delays the email lift read.
The date-of-birth loop is the first fix, and it is Novyra’s.Roughly three in four people arriving from Meta who start a match never reach a search. No media change recovers that. Confirmed by three independent checks and handed to FiveRivers.
Google holds at $100/day while two separate questions get answered.Tracking is working — we retract the earlier “renamed event” diagnosis. What is left is cost ($760 a signup against Meta’s $60) and a policy limit on the cancer-term ad group. Targeting hygiene has gone in; budget holds until it reads out.
One server-side signup event, three destinations.Meta is optimising to leads because that is all it can see; Reddit cannot start without it; Google would use it too. This is one dev project, not three tickets, and it is the single change that most improves what the ad platforms buy.
Instant Form lead quality is a second, independent problem.About one in twenty-five addresses collected is invalid — 38 hard bounces in 40. That is a quality signal on the same source producing the low signup rate, and it puts the sending domain at risk, so the nurture workflow is off until address validation and suppress-on-hard-bounce are in.
Engagement Roadmap
Foundation → In-Market → Scale
May–Jun
Foundation & strategy
Jul
Meta launch
Aug 18
Google Search serving
Aug 20
Placement cleanup + email program
Sep 1
September budget live
Now
Fix the funnel, then the signal
Next
Reddit live + scale on signups
In market this week
We stopped paying for the wrong signal
Sep 1–7
S1 paused — the cheapest leads in the account were the second-worst signups$2.67 a lead, $73.35 a signup, a 5.0% signup rate against C_dark’s 11.8%. Meta’s optimiser kept feeding it because it optimises to leads. It took $513.44 last week while C_dark, our best ad, took $449.59. Paused Sep 8.
The date-of-birth loop found, then confirmed three separate waysThe matcher asks for date of birth and does not record it. Found in a clean manual session, reproduced independently, and matched by the funnel drop between starting a match and running a search. Handed to FiveRivers as a product bug, ahead of the tracking work.
Nurture paused to protect the sending domainThe Instant Form workflow went off Sep 7. Spam complaints hit 0.15% against a 0.1% threshold, and the bounce review then found 4.08% bouncing with 38 of 40 hard — roughly one invalid address in twenty-five. Address validation and suppress-on-hard-bounce go in before it restarts.
We were wrong about Google, and checked it properlyLast week we reported Google’s conversion import was broken. It was not — the import is active and the numbers reconcile exactly against analytics. We had compared two different time windows and included organic traffic. Google’s real problem is $760 a signup and a policy limit, which is a different conversation.
Google targeting hygiene shipped; S2 switched offNegative keywords went in against the terms burning budget without intent. S2_Short_list is off as of Sep 3 — 90 leads, one signup, $333.81 a signup. Retargeting stays unavailable in this category on both platforms, so email remains the only second touch.
Coming up for Novyra
The product fix, then the signal fix
Sep 9 – 19
A date for the date-of-birth fixThis is the one item we are asking Novyra to put a date against this week. Until it lands, extra media spend buys more people arriving at the same loop. Budget stays where it is rather than stepping up.
Next week’s lead volume will drop, on purposeS1 and S2 together produced 282 of last week’s 735 leads. With both off, the lead count falls and the cost per lead rises. That is the trade we chose — fewer, better leads. Judge the week on cost per signup, not lead volume.
Google: a decision on the cancer-term policy limitThe condition-terms ad group is policy-limited for clinical trial recruitment — 224 impressions and 6 clicks all week. That limit is exemptible, but the certification question belongs to Novyra, not to bid management. Budget holds at $100/day until it is answered.
Address validation before the nurture restartsSuppress-on-hard-bounce and validation at capture, then the workflow comes back on. Restarting without them risks the sending domain, which would cost more than the emails are worth.
Reddit: server events now reach the platform, but not yet attributablyConversion events started landing Sep 9 — real progress. They are arriving without a usable click identifier, so Reddit cannot yet tie a signup to an ad. That plus the bot filter are the last two gates. No Reddit budget moves until both clear.
The email lift read, once the workflow is safely back onFirst clean answer to “does nurture create signups,” cohort against holdout. Delayed by the bounce pause, and worth the delay.
GA4 vs CRM reconciliationApp-side analytics and CRM tell different activation stories. One trusted number before the Oct–Nov investor window. A dev test-traffic filter is part of this.
Working personas
Oncology-first focus locked May 19, 2026
Patient · primary
Cancer patient
U.S.-based, 50+, in treatment or recently diagnosed
Overwhelmed by ClinicalTrials.gov, looking for someone to filter the noise. Reachable through disease-specific Facebook groups, oncology Reddit communities, advocacy sites, and Google search. Aha moment: matched to a real trial, fast, in plain language. Novyra gives patients agency.
Caregiver · primary
Caregiver
Often adult child of older patient, sometimes spouse
Frequently the actual searcher, especially for patients 60+. Doing the research the patient can't, translating it back. Reaches Novyra through advocacy orgs first, then Facebook groups, then late-night Google searches. Aha moment: a concrete path forward to take to the patient. "Here are real trials your mom may qualify for."
Physician · primary
Treating oncologist
Community or academic oncologist, trial coordinator
Resource-strapped, burned by digital tools that add work. Will not adopt a tool that adds steps. Reachable via professional journals, CME, conferences, and group sponsorships. Not via LinkedIn for work. Aha moment: 10-20 second workflow replaces ClinicalTrials.gov. Novyra gives doctors simplicity.
What we found in Novyra's data
May 22 pre-launch audit · historical baseline behind the current setup
Pixel measurement broken
$14.52
reported CAC is not real. No event_id, dual Pixel + CAPI without dedup, pixel firing on localhost + unrelated domains.
Resolved by design: CAC now measured in the CRM (ad-level join to real signups), not from the pixel. Clean pixel/CAPI rebuild ships with the attribution work.
Video format crushes static
20×
$3.91 CAC on top video vs $97 on worst static. Video CTR 5-6% vs static 0.18%.
Mike's production is 80%+ video for cold prospecting. Statics reserved for retargeting only.
/beta is the right landing page
$3.91
CAC for video ads landing on /beta. Static ads to / hit $55-97 CAC.
Earlier "redirect /beta to /" recommendation reverses. Short engagement = signups completing, not bouncing.
April 2026 performance cliff
CAC tripled across Europe, Asia, Australia in April with frequency hitting 5-7.
Audience fatigue + SAC tightening. Confirms 2025 numbers don't port to 2026 plan.
Channel concentration
63%
of sessions from Facebook paid
Multi-channel mix (Meta + Google + endemic) diversifies dependency.
Form-start rate
0.45%
32 form_starts from 7,043 sessions, 90d
Funnel leak at top. Signup flow rebuild scheduled Week 3.
Where Novyra needs to act
Items waiting on Novyra
The date-of-birth loop in the matcher — a fix date
On a clean first session the matcher asks for the patient’s date of birth, does not record it when supplied, and asks again. Reproduced three times consecutively in one session — supplied with gender, alone, and in plain ISO format. Gender captured first time; date of birth never. A chat allows 10 messages and a visitor gets 3 free chats, so a real user burns their allowance re-answering one question and leaves with nothing. The funnel drop between starting a match and running a search is consistent with exactly this. It sits downstream of every click we buy, so it outranks the tracking work: a corrected conversion event pointed at a broken funnel just measures the breakage more precisely. Confirmed independently; with FiveRivers now.
Action needed
“Email me these results” field: a yes, plus a legal check
One optional field on the results screen turns Google and Reddit visitors into contacts the email program can follow up with. Free use stays as agreed. Legal item: the email should link back to results with no condition details in the message, and carry standard consent language. Proposal is with Gerard.
Action needed
Google’s clinical-trial certification question
The condition-terms ad group is limited by policy for clinical trial recruitment: 224 impressions and 6 clicks across the whole week, against 1,224 impressions on the unrestricted group. The limit is exemptible, but the exemption is a certification question that belongs to Novyra, not something bid or budget management can solve. Worth stating plainly: fixing measurement does not rescue Google on its own. Separately, dev test signups still fire the real signup event — a standard internal-traffic exclusion in analytics keeps them out of the numbers.
Action needed
Reply owner for medical replies
Once the nurture workflow restarts, it reaches every new lead automatically and reply volume grows with it. Canned replies (how-to, unsubscribe, medical) are installed on hello@ as one-click templates; the medical script never gives advice and routes people to their care team. Still owed: one named human at Novyra as the reply owner, in place before the sequence goes back on.
Action needed
Dev tracking build: the three items gating Reddit
This is one project, not three tickets. Meta is currently optimising to Instant Form leads because that is the only thing it can see — which is exactly why the account drifted budget onto the cheapest leads instead of the cheapest signups. Reddit cannot start without it. Google would use it too. Progress this week: Reddit server events began arriving Sep 9, which proves the pipe works. They are arriving without a usable click identifier, so Reddit still cannot tie a signup back to an ad. Open items unchanged from the Aug 21 spec: click-ID capture at email submit and persistence, two server-side conversion events, bot filtering, gclid landing on the homepage rather than /login, and the results-reset fix. Reddit spend starts only after these land and a joint cross-device test passes.
In flight
HubSpot billing onto a Novyra payment method
Marketing Hub Pro ($1,000/mo + $250 contacts tier + $60 seats, next charge Sep 20) went on Tom’s card to unblock the purchase. The SOW contracts software in Novyra’s name — either move the card or paper the pass-through.
Action needed
Google Ads billing to the Novyra card
Google Search is spending ~$100/day. Billing should sit on Novyra’s Mercury card; Tom enters it on a call, five minutes.
Action needed
Risks Novyra is managing through us
Items we’re watching so they don’t become surprises
Monthly pace vs locked target
~300/mo
71 real signups landed Sep 1–7, 52 of them ad-attributed. At that rate the month lands near the 250–330 target — but the S1 and S2 pauses take volume out deliberately, so next week will read lower.
Cost per signup is $60.41, inside the $50–70 plan. Volume and cost pull against each other right now; we are holding cost and accepting the volume dip rather than the reverse.
Reddit could launch blind
Open
Server events started reaching Reddit on Sep 9 — genuine progress after weeks of nothing. But they arrive without a usable click identifier, so Reddit cannot connect a signup to the ad that produced it. Events landing and events being attributable are different things.
We checked this in the platform rather than taking the “events are firing” report at face value. No Reddit budget moves until a real click ID lands end to end and the bot filter ships.
Healthcare ad policy, both platforms
Active
Google accepted only 2 of 20 keyword themes on upload (cancer-specific terms rejected); Meta’s health restrictions keep tightening. Copy runs “may qualify” language everywhere.
Certification posture is clean and monitored weekly. Growth on Google comes from bid and budget on the accepted terms, not from keyword expansion.
Two activation numbers exist
Open
App-side analytics claim a higher lead→signup rate than the CRM join shows. Both measure something real; they are not measuring the same thing.
Reconciliation owed before the Oct–Nov investor conversations, so the deck number survives diligence. A dev test-traffic filter is part of it.
Instant Form address quality
1 in 25
40 bounces on 981 sends, 38 of them hard — roughly 3.9% of addresses collected are invalid. Spam complaints separately touched 0.15% against a 0.1% threshold.
A second, independent signal on the same lead source that produces the low signup rate. Two measurements pointing the same way is worth more than either alone. The nurture workflow is off until validation and suppress-on-hard-bounce are in; this protects the sending domain.
Decisions already made
For your awareness, no action needed
S1_Night_search paused — Sep 8
Cheapest cost per lead in the account ($2.67) and the second-worst cost per signup ($73.35), on a 5.0% lead-to-signup rate against C_dark’s 11.8%. Meta’s campaign budget optimiser was routing spend to it because the campaign optimises to leads. It took $513.44 in the week — more than C_dark, our best ad, at $449.59. Paused rather than re-bid, because the problem is the signal Meta is buying against, not the bid.
Done
S2_Short_list switched off — Sep 3
90 leads, one signup, $333.81 per signup. Clear verdict well before the window closed. Its spend line for Sep 1–7 is a partial week for that reason — do not read the decline as creative fatigue.
Done
Instant Form nurture workflow switched off — Sep 7
Turned off on a spam-rate gate (0.15% against a 0.1% threshold), and now also held on bounces: 4.08% bouncing with 38 of 40 hard. This protects the sending domain — a burned domain would cost more than the sequence returns. Address validation at capture and suppress-on-hard-bounce go in before it restarts. The email lift read moves back accordingly.
Done
Free search before signup stays open
Locked Aug 26. Keep the current free uses so we can measure what HubSpot reach-out does to signup rate versus user rate. Forced signup is later, in a few weeks to a month, not this week. No session-replay or click-video tooling.
Locked Aug 26
Audience Network excluded account-wide
Aug 20, on placement-level evidence: converting ads ran 8% of spend there, zero-signup ads ran 62–82%, and it was pricier per lead even for the converters. Applies to every campaign; the “allow limited spending” loophole is off. Standing rule going forward, for Novyra and every account we run.
Done Aug 20
Lifecycle email lives in HubSpot; Marketing Hub Pro purchased
Gerard approved the upgrade; purchased Aug 20 ($1,000/mo Pro + $250 contacts + $60 seats, monthly, 7,000-contact tier). Welcome email moved from the app into HubSpot and is live on every signup; one system now owns every patient-facing email.
Purchased
Patient emails are anonymous by design
No first names anywhere in the lifecycle emails — “Hi there” for everyone. Right posture for a cancer audience, and batched sending (150 → 350 → 500 → rest) protects the new sending domain’s reputation.
Locked Aug 17
Reddit restart spec agreed with Reddit’s team
$100/day for a 10-day burst, US, Feed + Conversation placements only, third-party network off, one server-validated qualified-session event per session as the optimization signal, bot filtering on our side. Click IDs only in every payload — no personal data to any ad platform.
Agreed Aug 20
August budget held at $16,350; $20K starts Sep 1
The SOW’s $20K media budget begins September 1; August stays at the agreed $16,350 with the ~$6K/month of planned placement-test spend cancelled as unnecessary — the exclusion achieved the same thing for $0.
Confirmed
PPC strategy + $10K/mo budget approved
Gerard signed off May 29. Google + Meta funnel approach, $10K/month paid media, 250-330 signups/month at $35-50 CAC once optimized. "Let's press go on all this."
Approved
Signup conversion definition locked
Gerard confirmed May 30. A conversion = user signs up + runs a search + clicks on a trial result. Stricter than email capture, looser than enrollment. Anchors all CAC measurement, pixel events, and Target CPA bidding.
Confirmed
IRB approval not required
Confirmed June 1. Novyra is a matching tool, not a research-conducting entity, and its privacy policy states no medical data is collected. The IRB requirement in Google's clinical trial recruitment policy applies to advertisers sponsoring or running trials, which Novyra isn't. Removes IRB from the launch critical path. Google Ads advertiser certification remains the only compliance gate.
Confirmed
Creative split: patient-heavy
8 launch videos with 6 patient + 2 caregiver (refined from 4/4 on the May 29 call). Monthly refresh of 4 total. Video-first. FDA-compliant copy reviewed before every batch.
Locked
Therapeutic focus: oncology first
Locked May 19. Future expansion candidates: brain health / Alzheimer's, pediatric rare disease.
Confirmed
B2C direction, three primary personas
Investor-confirmed May 18. Three personas: cancer patient (50+), caregiver, treating oncologist. Physicians reached through professional channels (Doximity, Sermo, UpToDate), not Meta.
Confirmed
Reddit added as a Phase 1 launch channel
Reddit moved from Phase 2 deferred to Phase 1 launch channel per Gerard's June 8 direction ("as soon as we have the opportunity to do some Reddit stuff, let's do it") and confirmed June 11. Reddit launches in parallel with Google Search and Meta, not after. Working numbers from David Collins (Reddit agency client partner): $2/click planning estimate, projected $30-60 CAC per qualified signup at a $1-2K monthly test budget within the $10K/month total envelope. Creative direction is organic-looking Reddit-native posts (static images and very short videos). No special healthcare licensing required for matching-service model. Approval timeline 24-48 hours. David handles compliance review. Reddit Pixel installation timed to kickoff. Patient-advocate influencer track remains a Phase 2 candidate.
Phase 1
Filmed advisor interviews
Greenlit. Subjects from the advisory team selected based on availability and on-camera fit. Feeds Meta video creative for cold prospecting.
Greenlit
Working group
Team
GH
Gerard Heath
Founder & CEO
JK
John King
Operations
M
Mike
Strategy
TZ
Thomas Zandstra
Marketing Lead, Acculead
Advisory team in interview rotation
Savi Glowe (clinical strategy) · Nick (data & tech) · Chris Mason, PhD (genomics, Weill Cornell) · Dr. Munira Moosajee (medical oncology)