Net monetary benefit a strategy gives up against the frontier strategy chosen at a threshold

Measures how far a strategy falls below the frontier at a value λ in net monetary benefit terms, as the net monetary benefit of the strategy s chosen at λ, the one with the highest value (HE-FM-NMB-003, the same strategy as HE-FM-CEF-001 picks), less that of strategy k, each from HE-FM-NMB-001. It is the incremental net monetary benefit of HE-FM-NMB-002 with s as the intervention and k as the comparator, so it is zero for the chosen strategy and not negative for any other. For a dominated or extendedly dominated strategy it is positive at every positive λ, since such strategies never have the highest net monetary benefit. When Q_k lies within the QALY range of the frontier, its smallest value arises at the slope of the frontier segment beneath Q_k, where it equals the saving of the blend of the two frontier neighbours in HE-FM-EXD-002, the vertical distance of k above the frontier.

Signature

NMB_s = lambda * Q_s - C_s; NMB_k = lambda * Q_k - C_k; L_k = NMB_s - NMB_k
Inputs
InputsDefinitionUnit
lambdaValue placed on one QALY at which both net monetary benefits are calculatedcurrency per QALY
Q_sExpected total discounted QALYs per person of strategy sQALYs per person
C_sExpected total cost per person of strategy scurrency per person
Q_kExpected total discounted QALYs per person of strategy kQALYs per person
C_kExpected total cost per person of strategy kcurrency per person
Output
NMB_sNet monetary benefit of strategy s, the strategy with the highest net monetary benefit at lambdacurrency per person
NMB_kNet monetary benefit of strategy k at lambdacurrency per person
L_kNet monetary benefit of the chosen strategy s less that of strategy k at the value lambdacurrency per person

Function

Cost-effectiveness frontier from the expected costs and QALYs of mutually exclusive strategies

Maps the expected total costs C_j and expected total QALYs Q_j of a set of mutually exclusive strategies, estimated for one population, perspective and time horizon, to the strategies on the cost-effectiveness frontier, the slopes of the segments joining them and, at a value λ placed on one QALY, the strategy chosen. It builds on live records and does not restate them. The dominance screen is HE-FM-DOM-001 and HE-FM-DOM-002, the extended dominance condition and the blend of neighbours are HE-FM-EXD-001 and HE-FM-EXD-002, the ratio between adjacent frontier strategies is the sequential ICER HE-FM-CEA-001 and the maximum net monetary benefit rule is HE-FM-NMB-003. This package adds the range of λ over which each frontier strategy is chosen, the net monetary benefit a strategy gives up against the frontier choice, the gradient of the IQWiG efficiency frontier and two computational functions that build the frontier for any number of strategies. Notation follows the Cost-Effectiveness Frontier article.

Computational function

  • Computational function for the one-pass net monetary benefit search for the cost-effectiveness frontier

    Takes the names, expected costs and expected QALYs of any number of strategies and a largest value per QALY of interest, and returns the frontier strategies by the one-pass method of Suen and Goldhaber-Fiebert. It calculates net monetary benefit (HE-FM-NMB-001) for every strategy at every value in a grid made of zero, every positive pairwise ICER up to the largest value and that value itself, and keeps the strategies that come out on top somewhere in the grid, with no rounds of elimination. At one value it also returns the net monetary benefit each strategy gives up, L_k of HE-FM-CEF-002. The Math / Code line shows four strategies at one value, and the R and Python versions take any number of strategies and the whole grid.

    Inputs and outputs: C_1 to C_4 are the expected costs per person of four strategies, in currency; Q_1 to Q_4 are their expected QALYs per person; lambda is the value placed on one QALY, zero or above, in currency per QALY; N_1 to N_4 are their net monetary benefits and N_max the highest; L_1 to L_4 are the net monetary benefits given up, all in currency per person. In the R and Python versions name, C and Q are lists of any length and lambda_max is the largest value per QALY of interest; they return the frontier strategies in cost order.

    Assumption: Where two strategies tie for the highest net monetary benefit at a grid value, the R and Python versions keep the one with more QALYs, so an equal-cost strategy with fewer QALYs is not reported at a value of zero. The Excel version takes the first maximum, so dominated strategies, ties included, are screened out first with HE-IM-DOM-002. A strategy lying exactly on a segment ties with its neighbours at one value only, so whether it is reported depends on rounding in floating point (with QALYs of 1.0, 1.1, 1.2 and 1.3 at costs of 1,000 to 4,000 the second strategy is reported and the third is not), where the elimination function HE-CF-CEF-001 keeps both. Strategies whose ratios exceed lambda_max are not reported, so the most effective strategy appears only when the grid reaches past the last ratio on the frontier.

    Worked example (Options A to D at GBP 20,000 per QALY): The net monetary benefits are GBP 70,000, 73,000, 72,000 and 74,000, so D is chosen, as in HE-EX-NMB-004, and A, B and C give up GBP 4,000, 1,000 and 2,000 per person. C_1 = 10000; Q_1 = 4.0; C_2 = 13000; Q_2 = 4.3; C_3 = 18000; Q_3 = 4.5; C_4 = 22000; Q_4 = 4.8; lambda = 20000; N_1 = 70000; N_2 = 73000; N_3 = 72000; N_4 = 74000; N_max = 74000; L_1 = 4000; L_2 = 1000; L_3 = 2000; L_4 = 0

    Worked example (Options A to D at the GBP 18,000 switching value): B and D tie at GBP 64,400, and C gives up GBP 1,400, the blend saving of HE-EX-EXD-003. C_1 = 10000; Q_1 = 4.0; C_2 = 13000; Q_2 = 4.3; C_3 = 18000; Q_3 = 4.5; C_4 = 22000; Q_4 = 4.8; lambda = 18000; N_1 = 62000; N_2 = 64400; N_3 = 63000; N_4 = 64400; N_max = 64400; L_1 = 2400; L_2 = 0; L_3 = 1400; L_4 = 0

    Worked example (Options A to D at a value of zero): With no value placed on health the cheapest strategy has the highest net monetary benefit, a limiting case. C_1 = 10000; Q_1 = 4.0; C_2 = 13000; Q_2 = 4.3; C_3 = 18000; Q_3 = 4.5; C_4 = 22000; Q_4 = 4.8; lambda = 0; N_1 = -10000; N_2 = -13000; N_3 = -18000; N_4 = -22000; N_max = -10000; L_1 = 0; L_2 = 3000; L_3 = 8000; L_4 = 12000

    Worked example (Article's six options with two largest values): With a largest value of GBP 100,000 per QALY the search returns R0, R1, R4 and R5, the same frontier as the elimination. With GBP 35,000 it returns R0, R1 and R4, since R5 is chosen only above GBP 60,000. lambda_max = 100000; frontier = R0, R1, R4, R5 and lambda_max = 35000; frontier = R0, R1, R4

    Excel: =LET(g,TOCOL((Costs-TRANSPOSE(Costs))/(QALYs-TRANSPOSE(QALYs)),3),grid,SORT(UNIQUE(VSTACK(0,MaxValue,FILTER(g,(g>0)*(g<=MaxValue),0)))),UNIQUE(MAP(grid,LAMBDA(l,INDEX(StrategyNames,MATCH(MAX(l*QALYs-Costs),l*QALYs-Costs,0)))))) With names, costs and QALYs in column ranges StrategyNames, Costs and QALYs and the largest value in MaxValue, the formula builds the grid, dropping the errors from equal QALYs and returning only 0 and MaxValue when no pairwise ratio is in range, and spills the frontier strategies. It needs Excel for Microsoft 365.

    R: cef_nmb <- function(name, C, Q, lambda_max) { g <- outer(C, C, "-")/outer(Q, Q, "-"); grid <- sort(unique(c(0, g[is.finite(g) & g > 0 & g <= lambda_max], lambda_max))); win <- sapply(grid, function(l) { v <- l*Q-C; k <- which(v == max(v)); k[which.max(Q[k])] }); name[unique(win)] } Returns the frontier strategies in the order in which they win as the value rises, which is cost order.

    Python: def cef_nmb(name, C, Q, lambda_max): n = len(C); grid = sorted({0, lambda_max} | {(C[j]-C[i])/(Q[j]-Q[i]) for i in range(n) for j in range(n) if Q[j] != Q[i] and 0 < (C[j]-C[i])/(Q[j]-Q[i]) <= lambda_max}); win = [max(range(n), key=lambda k: (l*Q[k]-C[k], Q[k])) for l in grid]; return [name[k] for k in dict.fromkeys(win)] Plain Python with no imports.

    Test (Article's choices at the two NICE values): At GBP 25,000 per QALY the second option, R1, has the highest net monetary benefit and at GBP 35,000 the fifth, R4. Expected result TRUE. Excel check =AND(MATCH(MAX(25000*{5;5.1;5.08;5.2;5.3;5.45}-{2000;4000;5500;9000;10000;19000}),25000*{5;5.1;5.08;5.2;5.3;5.45}-{2000;4000;5500;9000;10000;19000},0)=2,MATCH(MAX(35000*{5;5.1;5.08;5.2;5.3;5.45}-{2000;4000;5500;9000;10000;19000}),35000*{5;5.1;5.08;5.2;5.3;5.45}-{2000;4000;5500;9000;10000;19000},0)=5)

    Test (Most effective option found once the value passes its ratio): At GBP 100,000 per QALY the sixth option, R5, has the highest net monetary benefit. Expected result TRUE. Excel check =MATCH(MAX(100000*{5;5.1;5.08;5.2;5.3;5.45}-{2000;4000;5500;9000;10000;19000}),100000*{5;5.1;5.08;5.2;5.3;5.45}-{2000;4000;5500;9000;10000;19000},0)=6

    Common error (A coarse grid of round values): For options A to D, B is chosen only for values per QALY at or above GBP 10,000 and at or below GBP 18,000. A grid of 0, 20,000 and 40,000 returns A and D only, so B drops out of the frontier and the choice at GBP 15,000 is misread as A, which gives up GBP 1,500 per person against B (computed here for illustration). Suen and Goldhaber-Fiebert include every positive pairwise ICER in the grid to prevent this.

    Source: Suen S, Goldhaber-Fiebert JD. An efficient, non-iterative method of identifying the cost-effectiveness frontier. Medical Decision Making. 2016;36(1) 132-136. Introduction and the one-line Matlab implementation that takes the maximum of net monetary benefit over a vector of willingness-to-pay values, section II of the proof, which states that a grid of all positive pairwise ICERs with 0 and the maximum willingness to pay relevant to the analysis is guaranteed to identify all desired frontier strategies, section III on the lowest-cost strategy at zero and the highest-QALY strategy as the value grows without limit, and Figure 2, where not testing a value between two switching values omits a strategy.

    N_1 = lambda * Q_1 - C_1; N_2 = lambda * Q_2 - C_2; N_3 = lambda * Q_3 - C_3; N_4 = lambda * Q_4 - C_4; N_max = max(N_1, N_2, N_3, N_4); L_1 = N_max - N_1; L_2 = N_max - N_2; L_3 = N_max - N_3; L_4 = N_max - N_4

Try this function

Implementations

  • Excel

    Net monetary benefit given up against the best of all strategies

    With the costs of all strategies in Costs, their QALYs in QALYs, the value in ValuePerQALY and the strategy assessed in CostStrategy and QALYStrategy, the formula subtracts the strategy's net monetary benefit from the highest one. SUMPRODUCT makes older versions of Excel evaluate the array inside MAX without array entry.

    =SUMPRODUCT(MAX(ValuePerQALY*QALYs-Costs))-(ValuePerQALY*QALYStrategy-CostStrategy)

Assumptions

  • Chosen strategy found among the complete set of strategies

    Strategy s has the highest net monetary benefit at λ among every strategy in the analysis. If L_k comes out negative for some k, s was not the highest and the choice has to be corrected first.

  • Stated value per QALY for the net monetary benefit given up

    L_k depends on λ and is reported with it. It is a per-person amount on expected values, and the same comparison made in QALYs divides it by λ, which gives the net health benefit form that PMG36 asks for.

Worked examples

  • Extendedly dominated programme R3 against R1 at GBP 25,000 per QALY

    At GBP 25,000 per QALY the frontier choice in the article's illustrative example is R1, with a net monetary benefit of GBP 123,500 per person against GBP 121,000 for R3, so R3 gives up GBP 2,500 per person.

    lambda = 25000; Q_s = 5.10; C_s = 4000; Q_k = 5.20; C_k = 9000; NMB_s = 123500; NMB_k = 121000; L_k = 2500
  • Programme R3 at the GBP 30,000 switching value of the frontier

    At GBP 30,000 per QALY, the slope of the segment from R1 to R4 beneath R3, R1 and R4 tie at GBP 149,000 and R3 reaches GBP 147,000, as in the article. The gap of GBP 2,000 is the smallest R3 ever gives up and equals the saving of the half-and-half blend of R1 and R4 in the article's line test, GBP 9,000 against GBP 7,000.

    lambda = 30000; Q_s = 5.10; C_s = 4000; Q_k = 5.20; C_k = 9000; NMB_s = 149000; NMB_k = 147000; L_k = 2000
  • Frontier programme R5 outside its threshold range at GBP 35,000 per QALY

    R5 is on the frontier but is chosen only above GBP 60,000 per QALY. At GBP 35,000 the choice is R4, with GBP 175,500 per person against GBP 171,750 for R5, so R5 gives up GBP 3,750. A place on the frontier does not by itself make a strategy the choice.

    lambda = 35000; Q_s = 5.30; C_s = 10000; Q_k = 5.45; C_k = 19000; NMB_s = 175500; NMB_k = 171750; L_k = 3750
  • Chosen programme R4 measured against itself at GBP 35,000 per QALY

    With k equal to the chosen strategy the amount given up is zero, a limiting case that checks the implementation.

    lambda = 35000; Q_s = 5.30; C_s = 10000; Q_k = 5.30; C_k = 10000; NMB_s = 175500; NMB_k = 175500; L_k = 0

Common errors

  • Measuring the net monetary benefit given up against usual care

    At GBP 35,000 per QALY R3 and usual care R0 both have a net monetary benefit of GBP 173,000, so the incremental net monetary benefit of R3 over R0 is zero and R3 can look acceptable. Against the frontier choice R4 it gives up GBP 2,500 per person.

  • Reading the switching-value gap as the loss at every threshold

    The GBP 2,000 gap for R3 at GBP 30,000 per QALY is its smallest loss. At GBP 25,000 and at GBP 35,000 it gives up GBP 2,500 per person, so the gap is recomputed at each value reported.

Sources

  • Suen and Goldhaber-Fiebert on dominated strategies never having the highest net monetary benefit

    Suen S, Goldhaber-Fiebert JD. An efficient, non-iterative method of identifying the cost-effectiveness frontier. Medical Decision Making. 2016;36(1) 132-136. Introduction, which defines net monetary benefit as benefits converted to money at a given willingness to pay minus costs, and section III of the proof, which shows that strategies that are strictly dominated or dominated by extended dominance never have the highest net monetary benefit for any positive willingness to pay, and section II, equation 10, which shows a frontier strategy has the largest net monetary benefit at the slope between the strategies either side of it.

    View source →

  • NICE PMG36 on net health benefits alongside ICERs with several comparators

    National Institute for Health and Care Excellence. NICE technology appraisal and highly specialised technologies guidance, the manual (PMG36). Chapter 4, economic evaluation. Published 31 January 2022, last updated 13 October 2026. Section 4.2.16, which asks for expected net health benefits as well as ICERs, particularly informative when there are several technologies or comparators, using values placed on a QALY gain of GBP 25,000 and GBP 35,000, and notes that net monetary benefits can also be shown, and section 4.10.8 on the same two values.

    View source →

Canonical Identity