{"product_id":"lerner-index","title":"Lerner Index Calculator","description":"\u003cstyle\u003e\n.li-calculator {\n  --ink: #0f172a;\n  --muted: #475569;\n  --border: #e2e8f0;\n  --surface: #ffffff;\n  --tint: #f8fafc;\n  --primary: #1d4ed8;\n  --accent: #c2410c;\n  --accent-hover: #9a3412;\n  --chart-1: #1e40af;\n  --chart-2: #0d9488;\n  --chart-3: #7c3aed;\n  --chart-4: #be185d;\n  --chart-5: #334155;\n  container-type: inline-size;\n  width: 100%;\n  max-width: 1200px;\n  margin: 0 auto;\n  color: var(--ink);\n  background: var(--tint);\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  font-size: 15px;\n  line-height: 1.55;\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .06);\n  overflow-wrap: anywhere;\n}\n.li-calculator,\n.li-calculator *,\n.li-calculator *::before,\n.li-calculator *::after {\n  box-sizing: border-box;\n}\n.li-calculator button,\n.li-calculator input,\n.li-calculator select,\n.li-calculator textarea {\n  font: inherit;\n}\n.li-calculator button,\n.li-calculator input,\n.li-calculator select,\n.li-calculator a {\n  -webkit-tap-highlight-color: transparent;\n}\n.li-calculator .li-header {\n  padding: 24px 24px 16px;\n  background: var(--surface);\n  border-bottom: 1px solid var(--border);\n  min-width: 0;\n}\n.li-calculator .li-title-row {\n  display: flex;\n  align-items: flex-start;\n  justify-content: space-between;\n  gap: 16px;\n  min-width: 0;\n}\n.li-calculator .li-title-copy {\n  min-width: 0;\n}\n.li-calculator .li-title {\n  margin: 0;\n  color: var(--ink);\n  font-size: 24px;\n  line-height: 1.25;\n  font-weight: 700;\n  letter-spacing: -.02em;\n}\n.li-calculator .li-subtitle {\n  margin: 8px 0 0;\n  max-width: 760px;\n  color: var(--muted);\n  font-size: 15px;\n}\n.li-calculator .li-pills {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 16px;\n  min-width: 0;\n}\n.li-calculator .li-pill {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  min-height: 32px;\n  padding: 5px 10px;\n  border: 1px solid var(--border);\n  border-radius: 999px;\n  background: var(--tint);\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n  white-space: nowrap;\n  min-width: 0;\n}\n.li-calculator .li-pill strong {\n  color: var(--ink);\n  font-variant-numeric: tabular-nums;\n}\n.li-calculator .li-toolbar {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  gap: 12px;\n  padding: 16px 24px;\n  background: var(--surface);\n  border-bottom: 1px solid var(--border);\n  min-width: 0;\n}\n.li-calculator .li-button {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 10px;\n  min-height: 44px;\n  padding: 11px 18px;\n  border: 1px solid transparent;\n  border-radius: 6px;\n  font-size: 15px;\n  font-weight: 650;\n  line-height: 1;\n  text-decoration: none;\n  cursor: pointer;\n  transition: background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;\n  white-space: nowrap;\n}\n.li-calculator .li-button:hover {\n  box-shadow: 0 2px 5px rgba(15, 23, 42, .12);\n  transform: translateY(-1px);\n}\n.li-calculator .li-button:active {\n  transform: translateY(0);\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .08);\n}\n.li-calculator .li-button:focus-visible,\n.li-calculator input:focus-visible,\n.li-calculator select:focus-visible,\n.li-calculator summary:focus-visible,\n.li-calculator a:focus-visible {\n  outline: 3px solid rgba(29, 78, 216, .35);\n  outline-offset: 2px;\n}\n.li-calculator .li-button-primary {\n  background: var(--accent);\n  border-color: var(--accent);\n  color: #ffffff;\n}\n.li-calculator .li-button-primary:hover {\n  background: var(--accent-hover);\n  border-color: var(--accent-hover);\n}\n.li-calculator .li-button-secondary {\n  background: var(--surface);\n  border-color: #94a3b8;\n  color: var(--ink);\n}\n.li-calculator .li-button-secondary:hover {\n  background: var(--tint);\n  border-color: #64748b;\n}\n.li-calculator .li-button-icon {\n  width: 18px;\n  height: 18px;\n  flex: 0 0 auto;\n  fill: none;\n  stroke: currentColor;\n  stroke-width: 2;\n  stroke-linecap: round;\n  stroke-linejoin: round;\n}\n.li-calculator .li-main {\n  padding: 24px;\n  min-width: 0;\n}\n.li-calculator .li-workspace {\n  display: grid;\n  grid-template-columns: minmax(0, 1fr);\n  gap: 24px;\n  align-items: start;\n  min-width: 0;\n}\n.li-calculator .li-card {\n  min-width: 0;\n  padding: 20px;\n  background: var(--surface);\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .06);\n}\n.li-calculator .li-card-title {\n  margin: 0;\n  color: var(--ink);\n  font-size: 18px;\n  line-height: 1.35;\n  font-weight: 650;\n}\n.li-calculator .li-card-intro {\n  margin: 6px 0 0;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n}\n.li-calculator .li-fields {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 16px;\n  margin-top: 20px;\n  min-width: 0;\n}\n.li-calculator .li-field {\n  display: flex;\n  flex-direction: column;\n  min-width: 0;\n}\n.li-calculator .li-label {\n  margin-bottom: 8px;\n  color: var(--ink);\n  font-size: 14px;\n  font-weight: 600;\n}\n.li-calculator .li-input-wrap {\n  position: relative;\n  min-width: 0;\n}\n.li-calculator .li-input {\n  width: 100%;\n  min-width: 0;\n  min-height: 44px;\n  padding: 10px 12px;\n  border: 1px solid #94a3b8;\n  border-radius: 6px;\n  background: var(--surface);\n  color: var(--ink);\n  font-size: 15px;\n  font-variant-numeric: tabular-nums;\n  transition: border-color .15s ease, box-shadow .15s ease;\n}\n.li-calculator .li-input:hover {\n  border-color: #64748b;\n}\n.li-calculator .li-input[aria-invalid=\"true\"] {\n  border-color: #b91c1c;\n  box-shadow: 0 0 0 1px #b91c1c;\n}\n.li-calculator .li-helper {\n  min-height: 40px;\n  margin: 8px 0 0;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n  line-height: 1.45;\n}\n.li-calculator .li-error {\n  min-height: 19px;\n  margin: 4px 0 0;\n  color: #991b1b;\n  font-size: 13px;\n  font-weight: 600;\n  line-height: 1.45;\n}\n.li-calculator .li-formula-box {\n  margin-top: 16px;\n  padding: 12px;\n  border: 1px solid #bfdbfe;\n  border-radius: 6px;\n  background: #eff6ff;\n  color: #1e3a8a;\n  font-size: 13px;\n  font-weight: 500;\n}\n.li-calculator .li-formula-box code {\n  display: inline-block;\n  margin-top: 4px;\n  color: #172554;\n  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n  font-size: 13px;\n  font-weight: 700;\n}\n.li-calculator .li-results {\n  display: grid;\n  gap: 16px;\n  min-width: 0;\n}\n.li-calculator .li-primary-result {\n  padding: 20px;\n  border: 1px solid #bfdbfe;\n  border-radius: 8px;\n  background: #eff6ff;\n  min-width: 0;\n}\n.li-calculator .li-result-label {\n  color: #1e3a8a;\n  font-size: 13px;\n  font-weight: 650;\n  text-transform: uppercase;\n  letter-spacing: .05em;\n}\n.li-calculator .li-result-value {\n  margin-top: 4px;\n  color: #172554;\n  font-size: 30px;\n  line-height: 1.15;\n  font-weight: 700;\n  letter-spacing: -.02em;\n  font-variant-numeric: tabular-nums;\n}\n.li-calculator .li-result-context {\n  margin: 8px 0 0;\n  color: #1e3a8a;\n  font-size: 13px;\n  font-weight: 500;\n}\n.li-calculator .li-metrics {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 12px;\n  min-width: 0;\n}\n.li-calculator .li-metric {\n  min-width: 0;\n  padding: 14px;\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  background: var(--surface);\n}\n.li-calculator .li-metric-label {\n  display: block;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 600;\n}\n.li-calculator .li-metric-value {\n  display: block;\n  margin-top: 4px;\n  color: var(--ink);\n  font-size: 20px;\n  line-height: 1.3;\n  font-weight: 700;\n  font-variant-numeric: tabular-nums;\n}\n.li-calculator .li-live {\n  margin: 0;\n}\n.li-calculator .li-warning {\n  display: none;\n  padding: 12px;\n  border: 1px solid #fdba74;\n  border-radius: 6px;\n  background: #fff7ed;\n  color: #7c2d12;\n  font-size: 13px;\n  font-weight: 600;\n}\n.li-calculator .li-warning.li-is-visible {\n  display: block;\n}\n.li-calculator .li-section {\n  margin-top: 24px;\n  min-width: 0;\n}\n.li-calculator .li-chart-card {\n  min-width: 0;\n}\n.li-calculator .li-chart-header {\n  min-width: 0;\n}\n.li-calculator .li-chart-interpretation {\n  margin: 6px 0 0;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n}\n.li-calculator .li-chart-cluster {\n  display: grid;\n  grid-template-columns: minmax(220px, 300px) minmax(0, 430px);\n  justify-content: center;\n  align-items: center;\n  gap: 24px;\n  margin-top: 20px;\n  min-width: 0;\n}\n.li-calculator .li-chart-visual {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 100%;\n  max-width: 320px;\n  aspect-ratio: 1;\n  margin: 0 auto;\n  min-width: 0;\n}\n.li-calculator .li-donut {\n  display: block;\n  width: 100%;\n  height: auto;\n  max-width: 300px;\n  overflow: visible;\n}\n.li-calculator .li-chart-empty {\n  display: none;\n  width: 100%;\n  padding: 20px 16px;\n  border: 1px dashed #94a3b8;\n  border-radius: 6px;\n  background: var(--tint);\n  color: var(--muted);\n  text-align: center;\n  font-size: 13px;\n  font-weight: 600;\n}\n.li-calculator .li-chart-empty.li-is-visible {\n  display: block;\n}\n.li-calculator .li-legend {\n  display: grid;\n  gap: 12px;\n  align-content: center;\n  min-width: 0;\n}\n.li-calculator .li-legend-row {\n  display: grid;\n  grid-template-columns: 12px minmax(90px, auto) auto auto;\n  justify-content: start;\n  align-items: center;\n  column-gap: 12px;\n  row-gap: 4px;\n  min-width: 0;\n}\n.li-calculator .li-swatch {\n  width: 12px;\n  height: 12px;\n  border-radius: 3px;\n  border: 1px solid rgba(15, 23, 42, .18);\n}\n.li-calculator .li-legend-name {\n  min-width: 0;\n  color: var(--ink);\n  font-size: 13px;\n  font-weight: 600;\n}\n.li-calculator .li-legend-value,\n.li-calculator .li-legend-share {\n  color: var(--ink);\n  font-size: 13px;\n  font-weight: 650;\n  font-variant-numeric: tabular-nums;\n  white-space: nowrap;\n}\n.li-calculator .li-legend-share {\n  color: var(--muted);\n}\n.li-calculator .li-chart-caption {\n  margin-top: 16px;\n  padding: 10px 12px;\n  border: 1px solid var(--border);\n  border-radius: 6px;\n  background: var(--tint);\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n}\n.li-calculator .li-safe-stack .li-chart-cluster {\n  grid-template-columns: minmax(0, 320px);\n  align-items: start;\n  row-gap: 20px;\n}\n.li-calculator .li-safe-stack .li-chart-caption {\n  margin-top: 20px;\n}\n.li-calculator .li-table-card {\n  min-width: 0;\n}\n.li-calculator .li-table-wrap {\n  width: 100%;\n  margin-top: 16px;\n  overflow-x: auto;\n  overflow-y: visible;\n  border: 1px solid var(--border);\n  border-radius: 6px;\n  background: var(--surface);\n  min-width: 0;\n}\n.li-calculator .li-table {\n  width: 100%;\n  min-width: 720px;\n  border-collapse: collapse;\n  color: var(--ink);\n  font-size: 13px;\n  font-variant-numeric: tabular-nums;\n}\n.li-calculator .li-table th,\n.li-calculator .li-table td {\n  padding: 11px 12px;\n  border-bottom: 1px solid var(--border);\n  text-align: left;\n  vertical-align: middle;\n}\n.li-calculator .li-table th {\n  background: #0f172a;\n  color: #ffffff;\n  font-size: 13px;\n  font-weight: 650;\n  white-space: nowrap;\n}\n.li-calculator .li-table td.li-number,\n.li-calculator .li-table th.li-number {\n  text-align: right;\n}\n.li-calculator .li-table tbody tr:last-child td {\n  border-bottom: 0;\n}\n.li-calculator .li-table tbody tr:hover td {\n  background: #f8fafc;\n}\n.li-calculator .li-current-row td {\n  background: #eff6ff;\n  font-weight: 650;\n}\n.li-calculator .li-table-note {\n  margin-top: 16px;\n  padding: 10px 12px;\n  border: 1px solid var(--border);\n  border-radius: 6px;\n  background: var(--tint);\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n}\n.li-calculator .li-safe-table-stack .li-table-note {\n  margin-top: 20px;\n}\n.li-calculator .li-education {\n  margin-top: 24px;\n  padding: 24px;\n  background: var(--surface);\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  min-width: 0;\n}\n.li-calculator .li-education h2 {\n  margin: 28px 0 10px;\n  color: var(--ink);\n  font-size: 18px;\n  line-height: 1.35;\n  font-weight: 650;\n}\n.li-calculator .li-education h2:first-child {\n  margin-top: 0;\n}\n.li-calculator .li-education h3 {\n  margin: 20px 0 8px;\n  color: var(--ink);\n  font-size: 16px;\n  line-height: 1.4;\n  font-weight: 650;\n}\n.li-calculator .li-education p,\n.li-calculator .li-education li {\n  color: #334155;\n  font-size: 15px;\n}\n.li-calculator .li-education p {\n  margin: 0 0 12px;\n}\n.li-calculator .li-education ul {\n  margin: 8px 0 16px;\n  padding-left: 22px;\n}\n.li-calculator .li-education li + li {\n  margin-top: 8px;\n}\n.li-calculator .li-education a {\n  color: var(--primary);\n  font-weight: 600;\n  text-decoration-thickness: 1px;\n  text-underline-offset: 2px;\n}\n.li-calculator .li-education a:hover {\n  color: #1e40af;\n}\n.li-calculator .li-equation {\n  padding: 12px;\n  border-left: 4px solid var(--primary);\n  border-radius: 0 6px 6px 0;\n  background: #eff6ff;\n  color: #172554;\n  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n  font-size: 14px;\n  font-weight: 700;\n  overflow-wrap: anywhere;\n}\n.li-calculator .li-visually-hidden {\n  position: absolute;\n  width: 1px;\n  height: 1px;\n  padding: 0;\n  margin: -1px;\n  overflow: hidden;\n  clip: rect(0, 0, 0, 0);\n  white-space: nowrap;\n  border: 0;\n}\n@container (min-width: 900px) {\n  .li-calculator .li-workspace {\n    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);\n  }\n}\n@container (max-width: 760px) {\n  .li-calculator .li-header,\n  .li-calculator .li-toolbar,\n  .li-calculator .li-main {\n    padding-left: 16px;\n    padding-right: 16px;\n  }\n  .li-calculator .li-title-row {\n    display: block;\n  }\n  .li-calculator .li-fields {\n    grid-template-columns: minmax(0, 1fr);\n  }\n  .li-calculator .li-chart-cluster {\n    grid-template-columns: minmax(0, 320px);\n    row-gap: 20px;\n    align-items: start;\n  }\n  .li-calculator .li-card,\n  .li-calculator .li-education {\n    padding: 16px;\n  }\n}\n@container (max-width: 420px) {\n  .li-calculator .li-header {\n    padding-top: 20px;\n  }\n  .li-calculator .li-toolbar {\n    align-items: stretch;\n  }\n  .li-calculator .li-button {\n    width: 100%;\n  }\n  .li-calculator .li-pills {\n    display: grid;\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n  .li-calculator .li-pill {\n    justify-content: center;\n    white-space: normal;\n    text-align: center;\n  }\n  .li-calculator .li-metrics {\n    grid-template-columns: minmax(0, 1fr);\n  }\n  .li-calculator .li-legend-row {\n    grid-template-columns: 12px minmax(0, 1fr) auto;\n  }\n  .li-calculator .li-legend-share {\n    grid-column: 2 \/ 4;\n    padding-left: 0;\n  }\n}\n@media (prefers-reduced-motion: reduce) {\n  .li-calculator .li-button,\n  .li-calculator .li-input {\n    transition: none;\n  }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"li-calculator\" data-calculator-root\u003e\n  \u003cheader class=\"li-header\"\u003e\n    \u003cdiv class=\"li-title-row\"\u003e\n      \u003cdiv class=\"li-title-copy\"\u003e\n        \u003ch2 class=\"li-title\"\u003eLerner Index Calculator\u003c\/h2\u003e\n        \u003cp class=\"li-subtitle\"\u003eMeasure the price–marginal cost gap, review the implied markup, and compare nearby cost scenarios in real time.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"li-pills\" aria-label=\"Live calculation summary\"\u003e\n      \u003cspan class=\"li-pill\"\u003eIndex \u003cstrong id=\"li-pill-index\"\u003e0.3000\u003c\/strong\u003e\u003c\/span\u003e\n      \u003cspan class=\"li-pill\"\u003eMarkup share \u003cstrong id=\"li-pill-share\"\u003e30.00%\u003c\/strong\u003e\u003c\/span\u003e\n      \u003cspan class=\"li-pill\"\u003ePrice–cost gap \u003cstrong id=\"li-pill-gap\"\u003e$150.00\u003c\/strong\u003e\u003c\/span\u003e\n      \u003cspan class=\"li-pill\"\u003eSignal \u003cstrong id=\"li-pill-signal\"\u003eModerate\u003c\/strong\u003e\u003c\/span\u003e\n    \u003c\/div\u003e\n  \u003c\/header\u003e\n  \u003cdiv class=\"li-toolbar\" role=\"group\" aria-label=\"Calculator actions\"\u003e\n    \u003cbutton class=\"li-button li-button-primary\" id=\"li-download\" type=\"button\"\u003e\n      \u003csvg class=\"li-button-icon\" viewbox=\"0 0 24 24\" aria-hidden=\"true\"\u003e\u003cpath d=\"M12 3v12m0 0 4-4m-4 4-4-4M5 19h14\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n      \u003cspan\u003eDownload Excel\u003c\/span\u003e\n    \u003c\/button\u003e\n    \u003cbutton class=\"li-button li-button-secondary\" id=\"li-reset\" type=\"button\"\u003eReset\u003c\/button\u003e\n  \u003c\/div\u003e\n  \u003cmain class=\"li-main\"\u003e\n    \u003cdiv class=\"li-workspace\"\u003e\n      \u003csection class=\"li-card\" aria-labelledby=\"li-input-heading\"\u003e\n        \u003ch3 class=\"li-card-title\" id=\"li-input-heading\"\u003eInputs\u003c\/h3\u003e\n        \u003cp class=\"li-card-intro\"\u003eEnter price and marginal cost in the same currency and on the same per-unit basis.\u003c\/p\u003e\n        \u003cdiv class=\"li-fields\"\u003e\n          \u003cdiv class=\"li-field\"\u003e\n            \u003clabel class=\"li-label\" for=\"li-price\"\u003ePrice per unit\u003c\/label\u003e\n            \u003cdiv class=\"li-input-wrap\"\u003e\n              \u003cinput class=\"li-input\" id=\"li-price\" type=\"text\" inputmode=\"decimal\" autocomplete=\"off\" value=\"$500.00\" aria-describedby=\"li-price-help li-price-error\"\u003e\n            \u003c\/div\u003e\n            \u003cp class=\"li-helper\" id=\"li-price-help\"\u003eThe amount charged to the customer for one unit.\u003c\/p\u003e\n            \u003cp class=\"li-error\" id=\"li-price-error\" aria-live=\"polite\"\u003e\u003c\/p\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"li-field\"\u003e\n            \u003clabel class=\"li-label\" for=\"li-cost\"\u003eMarginal cost per unit\u003c\/label\u003e\n            \u003cdiv class=\"li-input-wrap\"\u003e\n              \u003cinput class=\"li-input\" id=\"li-cost\" type=\"text\" inputmode=\"decimal\" autocomplete=\"off\" value=\"$350.00\" aria-describedby=\"li-cost-help li-cost-error\"\u003e\n            \u003c\/div\u003e\n            \u003cp class=\"li-helper\" id=\"li-cost-help\"\u003eThe incremental cost of producing or serving one additional unit.\u003c\/p\u003e\n            \u003cp class=\"li-error\" id=\"li-cost-error\" aria-live=\"polite\"\u003e\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"li-formula-box\"\u003e\n          Core formula\u003cbr\u003e\n          \u003ccode\u003eL = (Price − Marginal cost) ÷ Price\u003c\/code\u003e\n        \u003c\/div\u003e\n      \u003c\/section\u003e\n      \u003csection class=\"li-results\" aria-labelledby=\"li-results-heading\"\u003e\n        \u003cdiv class=\"li-primary-result\"\u003e\n          \u003cspan class=\"li-result-label\" id=\"li-results-heading\"\u003eLerner index\u003c\/span\u003e\n          \u003cdiv class=\"li-result-value\" id=\"li-primary-value\"\u003e0.3000\u003c\/div\u003e\n          \u003cp class=\"li-result-context\" id=\"li-primary-context\"\u003e30.00% of the selling price is above marginal cost.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"li-metrics\"\u003e\n          \u003cdiv class=\"li-metric\"\u003e\n            \u003cspan class=\"li-metric-label\"\u003ePrice–cost gap\u003c\/span\u003e\n            \u003cstrong class=\"li-metric-value\" id=\"li-gap-value\"\u003e$150.00\u003c\/strong\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"li-metric\"\u003e\n            \u003cspan class=\"li-metric-label\"\u003eMarginal cost share\u003c\/span\u003e\n            \u003cstrong class=\"li-metric-value\" id=\"li-cost-share\"\u003e70.00%\u003c\/strong\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"li-metric\"\u003e\n            \u003cspan class=\"li-metric-label\"\u003eMarkup on marginal cost\u003c\/span\u003e\n            \u003cstrong class=\"li-metric-value\" id=\"li-markup-cost\"\u003e42.86%\u003c\/strong\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"li-metric\"\u003e\n            \u003cspan class=\"li-metric-label\"\u003eImplied demand elasticity\u003c\/span\u003e\n            \u003cstrong class=\"li-metric-value\" id=\"li-elasticity\"\u003e−3.33\u003c\/strong\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cp class=\"li-warning\" id=\"li-warning\"\u003e\u003c\/p\u003e\n        \u003cp class=\"li-live li-visually-hidden\" id=\"li-live\" aria-live=\"polite\"\u003eLerner index 0.3000.\u003c\/p\u003e\n      \u003c\/section\u003e\n    \u003c\/div\u003e\n    \u003csection class=\"li-card li-section li-chart-card\" id=\"li-chart-card\" aria-labelledby=\"li-chart-heading\"\u003e\n      \u003cdiv class=\"li-chart-header\"\u003e\n        \u003ch3 class=\"li-card-title\" id=\"li-chart-heading\"\u003ePrice composition\u003c\/h3\u003e\n        \u003cp class=\"li-chart-interpretation\" id=\"li-chart-interpretation\"\u003eMarginal cost represents 70.00% of price; the remaining 30.00% is the price–cost margin.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"li-chart-cluster\"\u003e\n        \u003cdiv class=\"li-chart-visual\" id=\"li-chart-visual\"\u003e\n          \u003csvg class=\"li-donut\" id=\"li-donut\" viewbox=\"0 0 300 300\" role=\"img\" aria-labelledby=\"li-donut-title li-donut-desc\"\u003e\n            \u003ctitle id=\"li-donut-title\"\u003ePrice composition chart\u003c\/title\u003e\n            \u003cdesc id=\"li-donut-desc\"\u003eMarginal cost 350 dollars, 70 percent. Price-cost margin 150 dollars, 30 percent.\u003c\/desc\u003e\n          \u003c\/svg\u003e\n          \u003cdiv class=\"li-chart-empty\" id=\"li-chart-empty\"\u003eEnter a positive price and a nonnegative marginal cost not above price to see the breakdown.\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"li-legend\" id=\"li-legend\" aria-label=\"Price composition legend\"\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"li-chart-caption\" id=\"li-chart-caption\"\u003eThe chart decomposes the current price into marginal cost and the price–cost margin. It is a unit-economics view, not a measure of total accounting profit.\u003c\/div\u003e\n      \u003cdiv class=\"li-table-wrap\" id=\"li-breakdown-wrap\"\u003e\n        \u003ctable class=\"li-table\" aria-label=\"Price composition data table\"\u003e\n          \u003cthead\u003e\n            \u003ctr\u003e\n\u003cth\u003eComponent\u003c\/th\u003e\n\u003cth class=\"li-number\"\u003eAmount\u003c\/th\u003e\n\u003cth class=\"li-number\"\u003eShare of price\u003c\/th\u003e\n\u003c\/tr\u003e\n          \u003c\/thead\u003e\n          \u003ctbody id=\"li-breakdown-body\"\u003e\u003c\/tbody\u003e\n        \u003c\/table\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"li-table-note\" id=\"li-breakdown-note\"\u003eThe component amounts and percentages use the same current-state data as the donut and legend.\u003c\/div\u003e\n    \u003c\/section\u003e\n    \u003csection class=\"li-card li-section li-table-card\" id=\"li-sensitivity-card\" aria-labelledby=\"li-sensitivity-heading\"\u003e\n      \u003ch3 class=\"li-card-title\" id=\"li-sensitivity-heading\"\u003eMarginal-cost sensitivity\u003c\/h3\u003e\n      \u003cp class=\"li-card-intro\"\u003eSee how the Lerner index changes while price remains fixed and marginal cost moves around the current assumption.\u003c\/p\u003e\n      \u003cdiv class=\"li-table-wrap\" id=\"li-sensitivity-wrap\"\u003e\n        \u003ctable class=\"li-table\" aria-label=\"Lerner index sensitivity table\"\u003e\n          \u003cthead\u003e\n            \u003ctr\u003e\n              \u003cth\u003eScenario\u003c\/th\u003e\n              \u003cth class=\"li-number\"\u003eMarginal cost\u003c\/th\u003e\n              \u003cth class=\"li-number\"\u003eCost share\u003c\/th\u003e\n              \u003cth class=\"li-number\"\u003eLerner index\u003c\/th\u003e\n              \u003cth class=\"li-number\"\u003ePrice–cost gap\u003c\/th\u003e\n              \u003cth\u003eInterpretation\u003c\/th\u003e\n            \u003c\/tr\u003e\n          \u003c\/thead\u003e\n          \u003ctbody id=\"li-sensitivity-body\"\u003e\u003c\/tbody\u003e\n        \u003c\/table\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"li-table-note\" id=\"li-sensitivity-note\"\u003eSensitivity rows change only marginal cost. They do not estimate how quantity, competitor reactions, or demand would respond.\u003c\/div\u003e\n    \u003c\/section\u003e\n    \u003carticle class=\"li-education\"\u003e\n      \u003ch2\u003eWhat does the Lerner index estimate?\u003c\/h2\u003e\n      \u003cp\u003eThe Lerner index is a compact measure of the gap between a firm’s price and the marginal cost of supplying one more unit. It expresses that gap as a share of price. A result of 0 means price equals marginal cost. A positive result means price exceeds marginal cost, while a value closer to 1 means the marginal cost is a relatively small part of the price. Economists use the measure as one indicator of market power, but it should not be treated as a complete competition test or as proof of unlawful conduct.\u003c\/p\u003e\n      \u003cp\u003eThe calculator uses the standard expression \u003cstrong\u003e(Price − Marginal cost) ÷ Price\u003c\/strong\u003e. With a price of $500 and marginal cost of $350, the result is 0.3000. In percentage language, 30.00% of the price is above marginal cost, while 70.00% covers the incremental production or service cost.\u003c\/p\u003e\n      \u003ch2\u003eHow should each input be entered?\u003c\/h2\u003e\n      \u003ch3\u003ePrice per unit\u003c\/h3\u003e\n      \u003cp\u003eUse the actual transaction price for one comparable unit, net of discounts that routinely apply. The field is required and must be greater than zero because price is the denominator of the formula. Higher price, holding marginal cost constant, raises the index. A common error is mixing a list price with a net marginal cost measured after rebates or channel fees. Keep both inputs aligned to the same product, market, customer type, currency, and time period.\u003c\/p\u003e\n      \u003ch3\u003eMarginal cost per unit\u003c\/h3\u003e\n      \u003cp\u003eMarginal cost is the additional cost caused by producing or serving one more unit. Depending on the business, this can include direct materials, incremental labor, transaction processing, shipping, usage-based cloud infrastructure, or other truly variable costs. It is required and should be nonnegative. Higher marginal cost, holding price constant, lowers the Lerner index. Avoid substituting total average cost without noting the limitation: rent, headquarters payroll, depreciation, and other fixed overhead may matter greatly for profit but may not change when one additional unit is produced.\u003c\/p\u003e\n      \u003ch2\u003eHow are the results interpreted?\u003c\/h2\u003e\n      \u003cp\u003eThe primary result is shown as a decimal because that is the conventional form of the index. The accompanying percentage expresses the same number as a share of price. A low positive value indicates that price is close to marginal cost. A larger positive value indicates a wider price–cost margin, which may be consistent with differentiated products, intellectual property, capacity constraints, switching costs, brand strength, regulation, or limited competition. Those explanations require separate evidence.\u003c\/p\u003e\n      \u003cul\u003e\n        \u003cli\u003e\n\u003cstrong\u003ePrice–cost gap\u003c\/strong\u003e is the dollar difference between price and marginal cost. It is not the same as net profit because it excludes fixed and shared expenses.\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003eMarginal cost share\u003c\/strong\u003e is marginal cost divided by price. Together with the Lerner percentage, it adds to 100% whenever marginal cost is between zero and price.\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003eMarkup on marginal cost\u003c\/strong\u003e divides the dollar gap by marginal cost. It answers a different question from the Lerner index, so the two percentages should not be confused.\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003eImplied demand elasticity\u003c\/strong\u003e applies the simplified Lerner rule, elasticity = −1 ÷ index, only when the index is positive. It is an economic benchmark, not an observed elasticity estimate.\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eIf marginal cost exceeds price, the raw formula becomes negative. This calculator displays that outcome as a below-marginal-cost warning rather than forcing the value to zero. Such a result can occur during promotions, penetration pricing, inventory liquidation, cross-subsidization, measurement error, or temporary capacity decisions. It should be investigated rather than interpreted as ordinary market power.\u003c\/p\u003e\n      \u003ch2\u003eWhat do the chart and sensitivity table show?\u003c\/h2\u003e\n      \u003cp\u003eThe donut chart splits the current unit price into marginal cost and the price–cost margin. It draws only when the decomposition is economically drawable: price must be positive and marginal cost must lie between zero and price. The legend and data table are generated from the same values, so the dollar amounts and percentages should agree exactly.\u003c\/p\u003e\n      \u003cp\u003eThe sensitivity table holds price fixed and moves marginal cost around the current assumption. It helps identify how estimation uncertainty in marginal cost changes the index. Because real markets are dynamic, the table does not model demand responses, competitor pricing, product substitution, or changes in volume. A firm should combine the Lerner index with evidence on market definition, substitution, entry barriers, customer switching, and competitive conduct.\u003c\/p\u003e\n      \u003ch2\u003eWhat are the main limitations?\u003c\/h2\u003e\n      \u003cp\u003eMarginal cost is often difficult to observe, especially in software, platforms, financial services, healthcare, and businesses with joint production. The index also does not capture fixed-cost recovery, innovation investment, quality differences, multi-product pricing, network effects, or regulated pricing. A high margin may fund substantial fixed costs and still produce modest economic profit. Conversely, a low index does not automatically prove vigorous competition if costs are measured incorrectly.\u003c\/p\u003e\n      \u003cp\u003eFor broader context, review the \u003ca href=\"https:\/\/www.ftc.gov\/terms\/market-power\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eFederal Trade Commission’s market power materials\u003c\/a\u003e, the \u003ca href=\"https:\/\/www.justice.gov\/atr\/antitrust-laws-and-you\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eU.S. Department of Justice overview of antitrust laws\u003c\/a\u003e, the DOJ’s discussion of \u003ca href=\"https:\/\/www.justice.gov\/atr\/merger-guidelines\/tools\/market-definition\" target=\"_blank\" rel=\"noopener noreferrer\"\u003emarket definition\u003c\/a\u003e, and the \u003ca href=\"https:\/\/www.oecd.org\/en\/events\/2022\/06\/market-power-in-the-digital-economy-and-competition-policy.html\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eOECD material on market power in digital markets\u003c\/a\u003e. These sources reinforce that market power analysis depends on facts beyond one ratio.\u003c\/p\u003e\n      \u003ch2\u003eHow can the calculator be used responsibly?\u003c\/h2\u003e\n      \u003cp\u003eUse consistent unit-level data, document how marginal cost was estimated, and compare results across time, products, firms, or scenarios only when definitions are genuinely comparable. Treat the output as a diagnostic metric rather than a legal conclusion, valuation opinion, or pricing recommendation. The Excel download captures the current inputs, calculations, breakdown, sensitivity rows, and methodological notes so the assumptions can be reviewed outside the webpage.\u003c\/p\u003e\n    \u003c\/article\u003e\n  \u003c\/main\u003e\n\u003c\/div\u003e","brand":"FinancialModelsLab","offers":[{"title":"Default Title","offer_id":49909486616819,"sku":"lerner-index","price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6191\/2762\/files\/lerner-index.webp?v=1783935499","url":"https:\/\/financialmodelslab.com\/products\/lerner-index","provider":"Financial Models Lab","version":"1.0","type":"link"}