MyPharmacy365 Financial Model

All changes saved

Dashboard

Revenue & Net Income

Margin Analysis

Revenue by Brand

Patient Growth

Key Financial Ratios

CAC / LTV Analysis

VIVAMEN — Patient & Order Volumes

VIVAFEM — Patient & Order Volumes

Global Settings

Sets the launch date for every product. You can still override individual dates afterwards.

VIVAMEN Products

VIVAFEM Products

Revenue Assumptions

Direct Cost Assumptions

Marketing Assumptions

Want to plan ad spend ↔ patient acquisition together? Use the Acquisition Calculator tab.

Monthly Ad Budget

Volume-Driven mode: caps spend (set 0 = uncapped). Budget-Driven mode: drives total patient acquisition (budget ÷ CAC).

Paid vs Organic Split by Year

Pre-Launch / Ramp-Up Costs

Costs incurred before revenue starts — initial stock purchases, pre-launch marketing, setup. These are charged in the months BEFORE any product launch date.

Bulk inventory buy, charged in month 1
Total budget, spread evenly over pre-launch months
Months of expenditure before first product launches

Working Capital & Tax

Pre-Launch Costs (Itemised)

One-time costs incurred before or during launch. Specify which month each cost applies to.

Custom Operating Expenses

Monthly costs under custom categories. End month 0 = ongoing through entire projection.

Revenue Workings

Income Statement

Common Size Income Statement

Monthly P&L & Cash Flow

Month-by-month breakdown for finance team. Negative cumulative cash highlighted in red.

Scroll right to see more months →

Balance Sheet

Cash Flow Statement

G&A Expenses

One-Time Setup Costs

Operating Expenses Summary

Staff Roles

How phased FTE works: Each role has 5 fields (Y1-Y5) that override the auto-scaling rule. Set fractional FTE (e.g., 0.5) to model part-time hires. Locum mode ignores salary & FTE entirely and instead bills per monthly order at the rate you set (£/order) — useful for prescribers paid per script.

Auto-Scale Staffing with Volume

When enabled, FTE headcount for each role scales automatically based on monthly order volume. Year 1 uses the base count above. From the "Scale from month", the model calculates: FTE = orders ÷ orders-per-FTE (rounded up, never below minimum).

Staffing Logic & Assumptions

This explains the rationale behind the auto-scaling thresholds. Based on per-order time analysis, NHS Drug Tariff dispensing benchmarks, and the business plan staffing model.

RoleTaskTime/OrderCapacity (1 FTE)Orders/FTELogic
Superintendent PharmacistGovernance, supplier mgmt, compliance, marketing approval, video consultsVariedN/AFixed at 1Business oversight role — does not scale with volume. Handles clinical checking in Y1 at lower volumes.
Checking PharmacistClinical accuracy check of dispensed items~1-1.5 min~5,000 orders/mo5,000Lighter touch than dispensing — reviews what the dispenser prepared. Doesn't exist in Y1; kicks in when Superintendent is maxed (~1,500+ orders/mo alongside other duties).
Dispenser / AdminLabel, pick, pack, courier prep, stock control, admin~3 min~3,300 orders/mo3,300Aligned with NHS Drug Tariff benchmark (2,000-3,499 items = 40hrs/wk for 1 FTE). Our items are simpler (same SKUs, 1 item/order, no CDs/paper scripts), so capacity sits at upper end of the band.
PrescriberReview consultation, approve/deny, video consults, clinical notes~1.9 min + video~4,000 orders/mo4,000Async consultation review. Lower than Checking Pharmacist due to video consults (~15-20 min each), mandatory clinical notes on denials, and heavier decision-making. Hired full-time in Y1 (~50-60% utilisation) as clinical safety net.

Year 1 team: 3 FTE (Superintendent + Dispenser/Admin + Prescriber). Superintendent handles clinical checking at low volume. Prescriber at ~50-60% utilisation but hired full-time for coverage, video consults, and clinical safety.
Year 2+: Checking Pharmacists and additional Dispensers/Prescribers scale in automatically based on monthly order volume. All thresholds configurable above.

Staffing Summary

Acquisition Calculator — Plan Ad Spend ↔ Patient Acquisition

This is a planning tool. Set your monthly ad budget and product mix here, then plug the resulting per-product patient targets into the Inputs tab. The dashboard will warn you if the two diverge.

1. Unit Economics

cost per click
click → patient
extra free traffic

2. Monthly Ad Budget — Year 1 (12 months)

Enter your planned ad spend for each month. The calculator shows resulting patients.

2b. Year 2-5 Growth Multipliers

Each year's budget = previous year's Month 12 budget × this multiplier. Defaults follow a conservative slowdown curve typical of online pharmacies maturing past Y3.

Default 1.5× (50% growth)
Default 1.5× (50% growth)
Default 1.3× (30% growth)
Default 1.2× (20% growth)
Why 1.5 / 1.5 / 1.3 / 1.2?
Online pharmacies typically grow fast in Y2-3 (60-100%+ YoY: Numan, Manual, Hims) then decelerate as the market matures. We're being deliberately conservative:
Y2 = 1.5× — slower than Numan/Manual at same stage. Accounts for build-up + organic kicking in.
Y3 = 1.5× — matches the “+50% YoY” statement in the marketing plan.
Y4 = 1.3× — natural deceleration as ad costs rise and market saturates.
Y5 = 1.2× — mature growth phase. Pharmacy2U-like steady state.
Compound effect: Y5 ≈ 3.5× Y1. For aggressive scenarios, push Y2-3 to 1.8× / 1.6×.

3. Patient Mix Across Active Products (must sum to 100%)

What % of acquired patients buys each product. Pre-loaded with the viva-acquisition-plan tier weights.

Why these percentages? — Acquisition Plan logic
The mix isn't arbitrary — it reflects which products carry the funnel.

Tier 1a — Named product ads (14-17.6%): "Highest ROAS, fully advertisable"
Viagra Connect (14%) — P medicine, no consultation barrier. Gateway product: 55% convert to Sildenafil subscription, 30% to Tadalafil Daily. Lowest-friction entry point.
Sildenafil (17.6%) — Highest margin generic ED (93%), strong subscription retention. The volume backbone.
Finasteride (17.6%) — Highest margin hair loss (88%), subscription product. 30% upsell to Minoxidil at 3-month review.
Test Kits (men 12.5%, women 9.9%) — Lead generation. High AOV (£120-140) but one-off. Drives patients into HRT/TRT pathways.

Tier 1b — Condition ads (8.8-10.7%): "Lower bottom-funnel"
Tadalafil Daily (10.7%) — Higher LTV than on-demand but more friction. Lower share to balance funnel.
Minoxidil Oral (8.8%) — Niche hair loss option, lower demand than Finasteride.
Utrogestan + Oestrogel (8.8%) — Core HRT subscription, but more clinical friction than Tier 1a products.

Tier 2 — Organic / cross-sell only (0%): Mounjaro, Wegovy (GLP-1 — ASA scrutiny too tight), Testogel/Tostran (informational only — TRT requires testing first), Estriol (cross-sell from HRT patients only — not modelled).

Not in calculator: • Gateway conversions (VC → Sildenafil 55%, → Tadalafil 30%) add ~33+18 = 51 sub patients/mo on top of paid
• Finasteride → Minoxidil upsell at 3 months (30% of Finasteride cohort)
• Cross-sell remarketing at £8 CAC for adjacent products

Output — Calculated Patient Targets

These are the "Patients (1st Month)" values you should plug into each product on the Inputs tab.

Sync All to Plan resets mix to canonical, copies calculator budget to the Inputs tab ramp, and applies patient targets to all products in one go. Use this if the dashboard shows a discrepancy alert.

Year 1 Summary

Capital Expenditure

CapEx & Depreciation Summary

Debt Assumptions

Debt Schedule

⚡ Mini calculator · Independent of other tabs
Capital Required Calculator
Adjust Y1 ad spend to see the cumulative cash floor recalculate. Pre-anchored on five scenarios run through the live financial model.

Inputs

£67k
25%
25%
Method: linear interpolation between seven anchor scenarios captured by running the live model with different DATA.adBudgetRamp values and reading min(RESULTS.monthly.cumCash). Each extra £1 of Y1 ad spend reduces capital required by ~£1.40 because acquired customers compound subscription revenue earlier.

Y1 ops adjustment: the financial model's staffScaling rules only activate from Y2 (m13). In reality, faster Y1 ramp means more orders, more dispenser/prescriber load, likely earlier hires. This slider adds back that cost: extra_ops = (y1_ad - £14k) × adjustment%.
⚠ Caveat: assumes current model assumptions: £32 CAC, £25 ARPU, 8.33% monthly churn, July 2026 launch. Y1 ops adjustment is a heuristic — actual Y1 staff cost depends on operational decisions (locum vs FTE, overtime, etc.).

Capital required

Cumulative cash floor
£120k
+ Y1 ops adjustment
+£13k
Subtotal (floor + ops)
£133k
With contingency buffer
£166k
Cash floor reached at approx.
Jul 2027
Saving vs slowest ramp

All scenarios

Each £1 of earlier Y1 ad spend reduces capital required by ~£1.40 (before ops adjustment) — because acquired customers compound subscription revenue earlier, pulling breakeven forward by months. The ops coefficient claws back some of the saving to reflect real-world Y1 staffing pressure that the model's fixed Y1 FTE assumption misses.

Trade-off: a slow ramp gives 2-3 months to validate creative + CAC before scaling spend. A fast ramp burns cash on un-tested channels but pulls breakeven 6-9 months forward.

Recommendation: medium-to-fast ramp once first 4 weeks of channel data confirm CAC ≤ £40.
✓ Already auto-scales (in anchors)
COGS — drug cost per order, proportional to orders
Packaging — 50% of delivery revenue
Royal Mail / delivery — proportional to volume
Payment fees — 2% of revenue (Stripe)
Wastage — % of revenue
Y2+ staffing — auto-scales via staffScaling rules
Revenue — directly proportional to acquired patients
⚠ Coefficient adds back
Y1 staffing pressure — model fixes Y1 FTE; reality needs more Dispenser/Prescriber cover at high volume
LexisNexis ID checks — £100/mo flat in model; reality is per-check
Customer support load — absorbed by Dispenser/Admin, same FTE issue
Locum / overtime cover — not modelled separately
Onboarding overhead — clinician training, content review at higher load
Default 25% reflects rough rule: extra £1k Y1 ad spend → ~£250 extra Y1 ops cost
Anchor scenarios (Y1 ad spend → capital required floor, before ops adjustment): £14k → £199k @ Sep 27 · £27k → £176k @ Sep 27 · £53k → £137k @ Jul 27 · £67k → £120k @ Jul 27 · £82k → £97k @ Apr 27 · £100k → £70k @ Mar 27 · £120k → £46k @ Oct 26. Each derived by setting DATA.adBudgetRamp in the live model and reading min(RESULTS.monthly.cumCash). Anchors include scaled COGS, packaging, delivery, payment fees, Y2+ staff. Y1 ops adjustment is added on top. Current model ramp = £67.5k Y1 → matches Dashboard "Capital Required" KPI of £119,719.