{"product_id":"credit-spread","title":"Credit Spread Calculator","description":"\u003cstyle\u003e\n.csp-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  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n  font-size: 15px;\n  line-height: 1.55;\n}\n.csp-calculator,\n.csp-calculator *,\n.csp-calculator *::before,\n.csp-calculator *::after {\n  box-sizing: border-box;\n}\n.csp-calculator * {\n  min-width: 0;\n}\n.csp-shell {\n  display: grid;\n  gap: 24px;\n}\n.csp-header {\n  display: grid;\n  gap: 12px;\n  padding: 24px;\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  background: var(--surface);\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .06);\n}\n.csp-header-copy {\n  display: grid;\n  gap: 4px;\n}\n.csp-title {\n  margin: 0;\n  color: var(--ink);\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.25;\n}\n.csp-subtitle {\n  margin: 0;\n  max-width: 760px;\n  color: var(--muted);\n  font-size: 15px;\n}\n.csp-pills {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n}\n.csp-pill {\n  display: inline-flex;\n  align-items: center;\n  gap: 6px;\n  min-height: 32px;\n  padding: 4px 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  line-height: 1.35;\n  max-width: 100%;\n  overflow-wrap: anywhere;\n  font-variant-numeric: tabular-nums;\n}\n.csp-pill strong {\n  color: var(--ink);\n  max-width: 100%;\n  overflow-wrap: anywhere;\n  font-weight: 700;\n}\n.csp-toolbar {\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  gap: 12px;\n}\n.csp-button {\n  min-height: 44px;\n  border: 1px solid #64748b;\n  border-radius: 6px;\n  padding: 10px 16px;\n  background: var(--surface);\n  color: var(--ink);\n  font: inherit;\n  font-size: 15px;\n  font-weight: 650;\n  line-height: 1.2;\n  cursor: pointer;\n  transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;\n}\n.csp-button:hover {\n  border-color: #cbd5e1;\n  box-shadow: 0 2px 6px rgba(15, 23, 42, .10);\n}\n.csp-button:active {\n  transform: translateY(1px);\n}\n.csp-button:focus-visible,\n.csp-control:focus-visible,\n.csp-segment-input:focus-visible + .csp-segment-label,\n.csp-details summary:focus-visible,\n.csp-education a:focus-visible {\n  outline: 3px solid #1d4ed8;\n  outline-offset: 2px;\n}\n.csp-download {\n  display: inline-flex;\n  align-items: center;\n  gap: 10px;\n  padding: 12px 18px;\n  border-color: var(--accent);\n  background: var(--accent);\n  color: #ffffff;\n  white-space: nowrap;\n}\n.csp-download:hover {\n  border-color: var(--accent-hover);\n  background: var(--accent-hover);\n  color: #ffffff;\n}\n.csp-download-icon {\n  width: 18px;\n  height: 18px;\n  flex: 0 0 auto;\n}\n.csp-workspace {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 24px;\n  align-items: start;\n}\n.csp-panel,\n.csp-card,\n.csp-chart-card,\n.csp-table-card,\n.csp-education {\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  background: var(--surface);\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .06);\n}\n.csp-panel,\n.csp-card,\n.csp-chart-card,\n.csp-table-card {\n  padding: 24px;\n}\n.csp-panel {\n  display: grid;\n  gap: 24px;\n}\n.csp-section-heading {\n  margin: 0;\n  color: var(--ink);\n  font-size: 18px;\n  font-weight: 650;\n  line-height: 1.35;\n}\n.csp-section-intro {\n  margin: 4px 0 0;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n}\n.csp-form-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));\n  gap: 16px;\n  align-items: start;\n}\n.csp-field {\n  display: grid;\n  grid-template-rows: auto minmax(44px, auto) auto auto;\n  gap: 8px;\n  align-content: start;\n}\n.csp-label,\n.csp-legend-title {\n  color: var(--ink);\n  font-size: 14px;\n  font-weight: 600;\n  line-height: 1.35;\n}\n.csp-control {\n  width: 100%;\n  min-height: 44px;\n  border: 1px solid #64748b;\n  border-radius: 6px;\n  padding: 10px 12px;\n  background: #ffffff;\n  color: var(--ink);\n  font: inherit;\n  font-size: 15px;\n  line-height: 1.35;\n  font-variant-numeric: tabular-nums;\n}\n.csp-control:hover {\n  border-color: #94a3b8;\n}\n.csp-control[aria-invalid=\"true\"] {\n  border-color: #b91c1c;\n}\n.csp-helper,\n.csp-error {\n  min-height: 36px;\n  margin: 0;\n  font-size: 13px;\n  font-weight: 500;\n  line-height: 1.4;\n}\n.csp-helper {\n  color: var(--muted);\n}\n.csp-error {\n  color: #991b1b;\n}\n.csp-unit-fieldset {\n  display: grid;\n  gap: 8px;\n  margin: 0;\n  padding: 0;\n  border: 0;\n}\n.csp-segments {\n  display: inline-grid;\n  grid-template-columns: repeat(2, minmax(88px, 1fr));\n  gap: 4px;\n  max-width: 260px;\n  padding: 4px;\n  border: 1px solid #64748b;\n  border-radius: 6px;\n  background: var(--tint);\n}\n.csp-segment {\n  position: relative;\n}\n.csp-segment-input {\n  position: absolute;\n  width: 1px;\n  height: 1px;\n  opacity: 0;\n}\n.csp-segment-label {\n  display: flex;\n  min-height: 36px;\n  align-items: center;\n  justify-content: center;\n  border: 1px solid transparent;\n  border-radius: 4px;\n  padding: 6px 10px;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 650;\n  cursor: pointer;\n}\n.csp-segment-input:checked + .csp-segment-label {\n  border-color: #64748b;\n  background: #ffffff;\n  color: var(--primary);\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .06);\n}\n.csp-details {\n  border-top: 1px solid var(--border);\n  padding-top: 16px;\n}\n.csp-details summary {\n  display: inline-flex;\n  align-items: center;\n  min-height: 36px;\n  color: var(--primary);\n  font-size: 14px;\n  font-weight: 650;\n  cursor: pointer;\n}\n.csp-details-content {\n  padding-top: 16px;\n}\n.csp-results {\n  container-type: inline-size;\n  display: grid;\n  gap: 16px;\n}\n.csp-primary-result {\n  display: grid;\n  gap: 8px;\n  padding: 20px;\n  border: 1px solid #bfdbfe;\n  border-radius: 8px;\n  background: #eff6ff;\n}\n.csp-result-label {\n  color: #1e3a8a;\n  font-size: 14px;\n  font-weight: 650;\n}\n.csp-result-value {\n  color: #172554;\n  font-size: 30px;\n  font-weight: 700;\n  line-height: 1.15;\n  overflow-wrap: anywhere;\n  font-variant-numeric: tabular-nums;\n}\n.csp-result-subline {\n  color: #1e3a8a;\n  font-size: 13px;\n  font-weight: 500;\n  font-variant-numeric: tabular-nums;\n}\n.csp-result-grid {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 12px;\n}\n.csp-metric {\n  display: grid;\n  gap: 4px;\n  align-content: start;\n  min-height: 108px;\n  padding: 16px;\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  background: var(--tint);\n}\n.csp-metric-name {\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 600;\n}\n.csp-metric-value {\n  color: var(--ink);\n  font-size: 20px;\n  font-weight: 700;\n  line-height: 1.25;\n  overflow-wrap: anywhere;\n  font-variant-numeric: tabular-nums;\n}\n.csp-metric-note {\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n  line-height: 1.35;\n}\n.csp-interpretation {\n  margin: 0;\n  padding: 12px;\n  border-left: 4px solid var(--primary);\n  border-radius: 0 6px 6px 0;\n  background: var(--tint);\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n}\n.csp-chart-card {\n  display: grid;\n  gap: 16px;\n}\n.csp-chart-header {\n  display: grid;\n  gap: 4px;\n}\n.csp-chart-cluster {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n  align-items: center;\n  justify-content: center;\n}\n.csp-plot-wrap {\n  display: grid;\n  gap: 12px;\n  width: 100%;\n  max-width: 680px;\n  margin: 0 auto;\n}\n.csp-chart-svg {\n  display: block;\n  width: 100%;\n  height: auto;\n  min-height: 0;\n  overflow: visible;\n}\n.csp-chart-empty {\n  display: flex;\n  min-height: 120px;\n  align-items: center;\n  justify-content: center;\n  padding: 24px;\n  border: 1px dashed #94a3b8;\n  border-radius: 6px;\n  background: var(--tint);\n  color: var(--muted);\n  font-size: 14px;\n  font-weight: 600;\n  text-align: center;\n}\n.csp-axis-title {\n  margin: 0;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n  text-align: center;\n}\n.csp-legend {\n  display: grid;\n  gap: 10px;\n  align-content: center;\n  width: fit-content;\n  max-width: 100%;\n  margin: 0 auto;\n}\n.csp-legend-row {\n  display: grid;\n  grid-template-columns: 12px minmax(100px, max-content) max-content;\n  gap: 10px;\n  align-items: center;\n  color: var(--ink);\n  font-size: 13px;\n  font-weight: 500;\n  font-variant-numeric: tabular-nums;\n}\n.csp-swatch {\n  width: 12px;\n  height: 12px;\n  border-radius: 3px;\n}\n.csp-legend-value {\n  color: var(--ink);\n  font-weight: 700;\n  white-space: nowrap;\n}\n.csp-chart-summary-wrap {\n  overflow-x: auto;\n  border: 1px solid var(--border);\n  border-radius: 6px;\n}\n.csp-chart-summary {\n  width: 100%;\n  min-width: 520px;\n  border-collapse: collapse;\n  font-size: 13px;\n  font-variant-numeric: tabular-nums;\n}\n.csp-chart-summary th,\n.csp-chart-summary td {\n  padding: 10px 12px;\n  border-bottom: 1px solid var(--border);\n  text-align: left;\n}\n.csp-chart-summary th {\n  background: var(--tint);\n  color: var(--muted);\n  font-weight: 650;\n}\n.csp-chart-summary td:nth-child(n+2),\n.csp-chart-summary th:nth-child(n+2) {\n  text-align: right;\n}\n.csp-chart-summary tr:last-child td {\n  border-bottom: 0;\n}\n.csp-chart-callout,\n.csp-table-note {\n  margin: 16px 0 0;\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  line-height: 1.45;\n}\n.csp-safe-chart-stack .csp-chart-cluster {\n  grid-template-columns: 1fr;\n  gap: 24px;\n}\n.csp-safe-chart-stack .csp-legend,\n.csp-safe-chart-stack .csp-chart-callout {\n  margin-top: 16px;\n}\n.csp-table-card {\n  display: grid;\n  gap: 16px;\n}\n.csp-table-wrap {\n  width: 100%;\n  overflow-x: auto;\n  border: 1px solid var(--border);\n  border-radius: 6px;\n}\n.csp-table {\n  width: 100%;\n  min-width: 680px;\n  border-collapse: collapse;\n  color: var(--ink);\n  font-size: 13px;\n  font-variant-numeric: tabular-nums;\n}\n.csp-table th,\n.csp-table td {\n  padding: 12px;\n  border-bottom: 1px solid var(--border);\n  text-align: left;\n  vertical-align: top;\n}\n.csp-table th {\n  background: var(--tint);\n  color: var(--muted);\n  font-weight: 650;\n}\n.csp-table td:nth-child(n+2),\n.csp-table th:nth-child(n+2) {\n  text-align: right;\n}\n.csp-table tr:last-child td {\n  border-bottom: 0;\n}\n.csp-safe-table-stack .csp-table-note {\n  margin-top: 24px;\n}\n.csp-education {\n  display: grid;\n  gap: 24px;\n  padding: 24px;\n}\n.csp-education-section {\n  display: grid;\n  gap: 10px;\n}\n.csp-education h2,\n.csp-education h3 {\n  margin: 0;\n  color: var(--ink);\n  line-height: 1.35;\n}\n.csp-education h2 {\n  font-size: 20px;\n  font-weight: 700;\n}\n.csp-education h3 {\n  font-size: 18px;\n  font-weight: 650;\n}\n.csp-education p,\n.csp-education ul {\n  margin: 0;\n  color: var(--muted);\n}\n.csp-education ul {\n  padding-left: 22px;\n}\n.csp-education li + li {\n  margin-top: 8px;\n}\n.csp-formula {\n  padding: 16px;\n  border: 1px solid #bfdbfe;\n  border-radius: 6px;\n  background: #eff6ff;\n  color: #172554;\n  font-weight: 650;\n  font-variant-numeric: tabular-nums;\n}\n.csp-education a {\n  color: #1d4ed8;\n  text-decoration: underline;\n  text-underline-offset: 2px;\n}\n.csp-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: 360px) {\n  .csp-result-grid {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n  .csp-result-grid .csp-metric:last-child {\n    grid-column: 1 \/ -1;\n  }\n}\n@container (min-width: 440px) {\n  .csp-result-grid {\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n  }\n  .csp-result-grid .csp-metric:last-child {\n    grid-column: auto;\n  }\n}\n@container (min-width: 1024px) {\n  .csp-chart-cluster {\n    grid-template-columns: minmax(320px, 640px) max-content;\n    gap: 24px;\n  }\n}\n@container (min-width: 900px) {\n  .csp-workspace {\n    grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr);\n  }\n  .csp-header {\n    grid-template-columns: minmax(0, 1fr) max-content;\n    align-items: end;\n  }\n  .csp-pills {\n    justify-content: flex-end;\n  }\n}\n@container (max-width: 639px) {\n  .csp-header,\n  .csp-panel,\n  .csp-card,\n  .csp-chart-card,\n  .csp-table-card,\n  .csp-education {\n    padding: 16px;\n  }\n  .csp-toolbar {\n    display: grid;\n    grid-template-columns: 1fr;\n  }\n  .csp-button {\n    width: 100%;\n    justify-content: center;\n  }\n  .csp-legend-row {\n    grid-template-columns: 12px minmax(84px, max-content) max-content;\n    gap: 8px;\n  }\n  .csp-chart-callout,\n  .csp-table-note {\n    margin-top: 12px;\n  }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"csp-calculator\" data-calculator-root\u003e\n  \u003cdiv class=\"csp-shell\"\u003e\n    \u003csection class=\"csp-header\" aria-labelledby=\"csp-title\"\u003e\n      \u003cdiv class=\"csp-header-copy\"\u003e\n        \u003ch2 class=\"csp-title\" id=\"csp-title\"\u003eCredit Spread Calculator\u003c\/h2\u003e\n        \u003cp class=\"csp-subtitle\"\u003eCompare a corporate bond yield with a maturity-matched government benchmark and translate the difference into percentage points, basis points, and annual spread compensation.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"csp-pills\" aria-label=\"Live calculation highlights\"\u003e\n        \u003cspan class=\"csp-pill\"\u003eSpread \u003cstrong data-csp-pill-spread\u003e3.50%\u003c\/strong\u003e\u003c\/span\u003e\n        \u003cspan class=\"csp-pill\"\u003eBasis points \u003cstrong data-csp-pill-bps\u003e350 bp\u003c\/strong\u003e\u003c\/span\u003e\n        \u003cspan class=\"csp-pill\"\u003eAnnual premium \u003cstrong data-csp-pill-premium\u003e$3,500.00\u003c\/strong\u003e\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003cdiv class=\"csp-toolbar\" aria-label=\"Calculator actions\"\u003e\n      \u003cbutton class=\"csp-button csp-download\" type=\"button\" data-csp-download\u003e\n        \u003csvg class=\"csp-download-icon\" viewbox=\"0 0 24 24\" aria-hidden=\"true\" focusable=\"false\"\u003e\n          \u003cpath d=\"M12 3v11m0 0 4-4m-4 4-4-4M5 17v3h14v-3\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\n        \u003c\/svg\u003e\n        \u003cspan\u003eDownload Excel\u003c\/span\u003e\n      \u003c\/button\u003e\n      \u003cbutton class=\"csp-button\" type=\"button\" data-csp-reset\u003eReset\u003c\/button\u003e\n    \u003c\/div\u003e\n\n    \u003csection class=\"csp-workspace\" aria-label=\"Credit spread workspace\"\u003e\n      \u003cdiv class=\"csp-panel\"\u003e\n        \u003cdiv\u003e\n          \u003ch3 class=\"csp-section-heading\"\u003eBond yields\u003c\/h3\u003e\n          \u003cp class=\"csp-section-intro\"\u003eUse yields to maturity for bonds with comparable maturity and currency.\u003c\/p\u003e\n        \u003c\/div\u003e\n\n        \u003cfieldset class=\"csp-unit-fieldset\"\u003e\n          \u003clegend class=\"csp-legend-title\"\u003eYield input unit\u003c\/legend\u003e\n          \u003cdiv class=\"csp-segments\" role=\"radiogroup\" aria-label=\"Yield input unit\"\u003e\n            \u003cdiv class=\"csp-segment\"\u003e\n              \u003cinput class=\"csp-segment-input\" type=\"radio\" name=\"csp-yield-unit\" id=\"csp-unit-percent\" value=\"percent\" checked\u003e\n              \u003clabel class=\"csp-segment-label\" for=\"csp-unit-percent\"\u003ePercent (%)\u003c\/label\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"csp-segment\"\u003e\n              \u003cinput class=\"csp-segment-input\" type=\"radio\" name=\"csp-yield-unit\" id=\"csp-unit-bps\" value=\"bps\"\u003e\n              \u003clabel class=\"csp-segment-label\" for=\"csp-unit-bps\"\u003eBasis points\u003c\/label\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/fieldset\u003e\n\n        \u003cdiv class=\"csp-form-grid\"\u003e\n          \u003cdiv class=\"csp-field\"\u003e\n            \u003clabel class=\"csp-label\" for=\"csp-corporate-yield\"\u003eCorporate bond yield\u003c\/label\u003e\n            \u003cinput class=\"csp-control\" id=\"csp-corporate-yield\" data-csp-input=\"corporate\" type=\"text\" inputmode=\"decimal\" autocomplete=\"off\" value=\"5.30%\" aria-describedby=\"csp-corporate-help csp-corporate-error\"\u003e\n            \u003cp class=\"csp-helper\" id=\"csp-corporate-help\"\u003eThe annual yield to maturity quoted for the corporate bond.\u003c\/p\u003e\n            \u003cp class=\"csp-error\" id=\"csp-corporate-error\" data-csp-error=\"corporate\" aria-live=\"off\"\u003e\u003c\/p\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"csp-field\"\u003e\n            \u003clabel class=\"csp-label\" for=\"csp-government-yield\"\u003eGovernment bond yield\u003c\/label\u003e\n            \u003cinput class=\"csp-control\" id=\"csp-government-yield\" data-csp-input=\"government\" type=\"text\" inputmode=\"decimal\" autocomplete=\"off\" value=\"1.80%\" aria-describedby=\"csp-government-help csp-government-error\"\u003e\n            \u003cp class=\"csp-helper\" id=\"csp-government-help\"\u003eThe annual yield for a government benchmark with the same maturity.\u003c\/p\u003e\n            \u003cp class=\"csp-error\" id=\"csp-government-error\" data-csp-error=\"government\" aria-live=\"off\"\u003e\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdetails class=\"csp-details\" data-csp-advanced\u003e\n          \u003csummary\u003eAdvanced amount analysis\u003c\/summary\u003e\n          \u003cdiv class=\"csp-details-content\"\u003e\n            \u003cdiv class=\"csp-form-grid\"\u003e\n              \u003cdiv class=\"csp-field\"\u003e\n                \u003clabel class=\"csp-label\" for=\"csp-principal\"\u003eBond principal\u003c\/label\u003e\n                \u003cinput class=\"csp-control\" id=\"csp-principal\" data-csp-input=\"principal\" type=\"text\" inputmode=\"decimal\" autocomplete=\"off\" value=\"$100,000.00\" aria-describedby=\"csp-principal-help csp-principal-error\"\u003e\n                \u003cp class=\"csp-helper\" id=\"csp-principal-help\"\u003eOptional face amount used to estimate annual spread compensation in dollars.\u003c\/p\u003e\n                \u003cp class=\"csp-error\" id=\"csp-principal-error\" data-csp-error=\"principal\" aria-live=\"off\"\u003e\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/details\u003e\n      \u003c\/div\u003e\n\n      \u003caside class=\"csp-card csp-results\" aria-labelledby=\"csp-results-title\"\u003e\n        \u003cdiv\u003e\n          \u003ch3 class=\"csp-section-heading\" id=\"csp-results-title\"\u003eLive results\u003c\/h3\u003e\n          \u003cp class=\"csp-section-intro\"\u003eThe spread is the corporate yield minus the government yield.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"csp-primary-result\" aria-live=\"polite\" aria-atomic=\"true\"\u003e\n          \u003cspan class=\"csp-result-label\"\u003eCredit spread\u003c\/span\u003e\n          \u003cstrong class=\"csp-result-value\" data-csp-primary\u003e3.50%\u003c\/strong\u003e\n          \u003cspan class=\"csp-result-subline\" data-csp-primary-subline\u003e350 basis points\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"csp-result-grid\"\u003e\n          \u003carticle class=\"csp-metric\"\u003e\n            \u003cspan class=\"csp-metric-name\"\u003eSpread share of corporate yield\u003c\/span\u003e\n            \u003cstrong class=\"csp-metric-value\" data-csp-share\u003e66.04%\u003c\/strong\u003e\n            \u003cspan class=\"csp-metric-note\"\u003eThe portion of corporate yield above the benchmark.\u003c\/span\u003e\n          \u003c\/article\u003e\n          \u003carticle class=\"csp-metric\"\u003e\n            \u003cspan class=\"csp-metric-name\"\u003eAnnual spread compensation\u003c\/span\u003e\n            \u003cstrong class=\"csp-metric-value\" data-csp-premium\u003e$3,500.00\u003c\/strong\u003e\n            \u003cspan class=\"csp-metric-note\"\u003eSimple annual spread × principal, before price effects.\u003c\/span\u003e\n          \u003c\/article\u003e\n          \u003carticle class=\"csp-metric\"\u003e\n            \u003cspan class=\"csp-metric-name\"\u003eYield multiple\u003c\/span\u003e\n            \u003cstrong class=\"csp-metric-value\" data-csp-multiple\u003e2.94×\u003c\/strong\u003e\n            \u003cspan class=\"csp-metric-note\"\u003eCorporate yield divided by the government yield.\u003c\/span\u003e\n          \u003c\/article\u003e\n        \u003c\/div\u003e\n        \u003cp class=\"csp-interpretation\" data-csp-interpretation\u003eThe corporate bond offers a positive 350 bp premium over the government benchmark. This is a relatively wide spread, but it is not a credit rating or default-probability estimate.\u003c\/p\u003e\n      \u003c\/aside\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"csp-chart-card\" data-csp-chart-card aria-labelledby=\"csp-chart-title\"\u003e\n      \u003cdiv class=\"csp-chart-header\"\u003e\n        \u003ch3 class=\"csp-section-heading\" id=\"csp-chart-title\"\u003eYield comparison\u003c\/h3\u003e\n        \u003cp class=\"csp-section-intro\" data-csp-chart-intro\u003eCorporate yield is 3.50 percentage points above the benchmark.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"csp-chart-cluster\" data-csp-chart-cluster\u003e\n        \u003cdiv class=\"csp-plot-wrap\" data-csp-plot-wrap\u003e\n          \u003cdiv data-csp-chart-host\u003e\u003c\/div\u003e\n          \u003cp class=\"csp-axis-title\" data-csp-axis-title\u003eAnnual yield (%)\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"csp-legend\" data-csp-legend aria-label=\"Yield comparison legend\"\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"csp-chart-summary-wrap\" data-csp-chart-summary-wrap\u003e\n        \u003ctable class=\"csp-chart-summary\" aria-label=\"Exact values represented in the yield comparison chart\"\u003e\n          \u003cthead\u003e\n            \u003ctr\u003e\n\u003cth\u003eSeries\u003c\/th\u003e\n\u003cth\u003eYield\u003c\/th\u003e\n\u003cth\u003eBasis points\u003c\/th\u003e\n\u003cth\u003eDifference vs. benchmark\u003c\/th\u003e\n\u003c\/tr\u003e\n          \u003c\/thead\u003e\n          \u003ctbody data-csp-chart-summary-body\u003e\u003c\/tbody\u003e\n        \u003c\/table\u003e\n      \u003c\/div\u003e\n      \u003cp class=\"csp-chart-callout\" data-csp-chart-caption\u003eThe chart compares the two quoted yields and the calculated spread using one shared scale. A wider gap means investors are demanding more yield over the government benchmark.\u003c\/p\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"csp-table-card\" data-csp-table-card aria-labelledby=\"csp-table-title\"\u003e\n      \u003cdiv\u003e\n        \u003ch3 class=\"csp-section-heading\" id=\"csp-table-title\"\u003eCalculation detail\u003c\/h3\u003e\n        \u003cp class=\"csp-section-intro\"\u003eA compact audit trail for the current assumptions.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"csp-table-wrap\" data-csp-table-wrap\u003e\n        \u003ctable class=\"csp-table\"\u003e\n          \u003cthead\u003e\n            \u003ctr\u003e\n\u003cth\u003eMetric\u003c\/th\u003e\n\u003cth\u003ePercent\u003c\/th\u003e\n\u003cth\u003eBasis points\u003c\/th\u003e\n\u003cth\u003eAnnual amount\u003c\/th\u003e\n\u003c\/tr\u003e\n          \u003c\/thead\u003e\n          \u003ctbody data-csp-detail-body\u003e\u003c\/tbody\u003e\n        \u003c\/table\u003e\n      \u003c\/div\u003e\n      \u003cp class=\"csp-table-note\" data-csp-table-note\u003eAnnual amounts are simple yield × principal estimates. They do not account for bond price, coupon frequency, accrued interest, taxes, duration, convexity, liquidity, or reinvestment.\u003c\/p\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"csp-education\" aria-labelledby=\"csp-education-title\"\u003e\n      \u003cdiv class=\"csp-education-section\"\u003e\n        \u003ch2 id=\"csp-education-title\"\u003eHow to use the credit spread calculator\u003c\/h2\u003e\n        \u003cp\u003eThis calculator estimates the yield premium a corporate bond offers over a government bond benchmark. The core result is the credit spread: the corporate yield to maturity minus the government yield for a bond with a similar maturity and the same currency. The result is shown in both percentage points and basis points, where one percentage point equals 100 basis points. The tool also converts the spread into a simple annual dollar amount when you provide a bond principal.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"csp-education-section\"\u003e\n        \u003ch3\u003eInputs and what they mean\u003c\/h3\u003e\n        \u003cul\u003e\n          \u003cli\u003e\n\u003cstrong\u003eYield input unit\u003c\/strong\u003e controls whether you enter both yields as percentages or basis points. Choose percent when a quote appears as 5.30%; choose basis points when it appears as 530 bp. Switching the unit converts the current entries rather than changing only the label. This setting is required because it determines how the two yield fields are parsed.\u003c\/li\u003e\n          \u003cli\u003e\n\u003cstrong\u003eCorporate bond yield\u003c\/strong\u003e is the annual yield to maturity of the corporate bond. Use a market yield rather than the coupon rate unless the bond is trading exactly at par. A higher corporate yield increases the spread when the government benchmark is unchanged. Negative yields are accepted because they can occur in some markets, although they require careful interpretation.\u003c\/li\u003e\n          \u003cli\u003e\n\u003cstrong\u003eGovernment bond yield\u003c\/strong\u003e is the benchmark yield. It should match the corporate bond as closely as practical on maturity, currency, and yield convention. Raising the benchmark yield reduces the calculated spread. A common mistake is comparing a short corporate bond with a long government bond; part of the measured difference may then reflect the yield curve rather than credit risk.\u003c\/li\u003e\n          \u003cli\u003e\n\u003cstrong\u003eBond principal\u003c\/strong\u003e is optional and appears under advanced amount analysis. Enter the face amount or notional exposure you want to analyze. It does not change the spread percentage. It only scales the annual spread compensation estimate. Setting principal to zero leaves the percentage analysis intact and produces a zero dollar estimate.\u003c\/li\u003e\n        \u003c\/ul\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"csp-education-section\"\u003e\n        \u003ch3\u003eFormula and model\u003c\/h3\u003e\n        \u003cdiv class=\"csp-formula\"\u003eCredit spread = Corporate bond yield − Government bond yield\u003c\/div\u003e\n        \u003cp\u003eFor example, a 5.30% corporate yield and a 1.80% government yield produce a 3.50 percentage-point spread, equal to 350 basis points. The calculator keeps full precision internally and rounds only the displayed and exported values. The annual spread compensation is calculated as principal multiplied by the spread expressed as a decimal. This dollar figure is a simple rate translation, not a forecast of realized return.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"csp-education-section\"\u003e\n        \u003ch3\u003eUnderstanding each result\u003c\/h3\u003e\n        \u003cp\u003e\u003cstrong\u003eCredit spread\u003c\/strong\u003e is the main output. A positive value means the corporate bond yields more than the government benchmark. A zero spread means the two quoted yields are equal. A negative spread means the corporate bond yield is below the selected benchmark, which can happen because of mismatched maturities, unusual supply and demand, embedded options, market dislocations, or a benchmark that is not truly comparable.\u003c\/p\u003e\n        \u003cp\u003e\u003cstrong\u003eSpread share of corporate yield\u003c\/strong\u003e divides the spread by the corporate yield. It indicates how much of the quoted corporate yield sits above the benchmark. It is descriptive rather than a standard credit-risk measure and becomes less meaningful when the corporate yield is near zero or negative.\u003c\/p\u003e\n        \u003cp\u003e\u003cstrong\u003eAnnual spread compensation\u003c\/strong\u003e multiplies the spread by the principal. It is useful for quickly translating 350 bp into approximately $3,500 per year on $100,000 of principal. Actual bond income is determined by coupon cash flows, purchase price, accrued interest, calls, defaults, and reinvestment, so the value should not be treated as guaranteed income.\u003c\/p\u003e\n        \u003cp\u003e\u003cstrong\u003eYield multiple\u003c\/strong\u003e compares the corporate yield with the government yield. It can help communicate scale, but it is unstable when the government yield is zero or very small. In that case, the calculator reports the multiple as unavailable while preserving the spread calculation.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"csp-education-section\"\u003e\n        \u003ch3\u003eReading the chart and table\u003c\/h3\u003e\n        \u003cp\u003eThe chart places the corporate yield, government yield, and spread on a common axis. The corporate and government bars show the quoted market yields; the spread bar shows their arithmetic difference. Negative values extend to the left of zero. The legend and exact-value table are generated from the same calculation model as the chart, so the colors, values, and basis-point figures remain synchronized when assumptions change.\u003c\/p\u003e\n        \u003cp\u003eThe calculation-detail table provides a compact cross-check. The corporate and government rows show the source yields and simple annual amounts. The credit-spread row shows the difference. If the values are all zero after a reset, the visual is replaced with an empty-state message rather than displaying a decorative or misleading chart.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"csp-education-section\"\u003e\n        \u003ch3\u003eInterpretation, tradeoffs, and common mistakes\u003c\/h3\u003e\n        \u003cp\u003eWider spreads often indicate that investors require more compensation for credit risk, liquidity risk, structural subordination, or uncertainty. Tighter spreads can reflect stronger perceived credit quality or favorable market conditions. Spread levels are also influenced by the economic cycle and market liquidity, so a single reading should be compared with the issuer’s own history, similar issuers, and the broader market.\u003c\/p\u003e\n        \u003cul\u003e\n          \u003cli\u003eMatch maturity and currency before comparing yields. For U.S. benchmarks, the \u003ca href=\"https:\/\/home.treasury.gov\/resource-center\/data-chart-center\/interest-rates\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eU.S. Treasury yield data\u003c\/a\u003e provides official reference rates.\u003c\/li\u003e\n          \u003cli\u003eCheck whether the quoted yield includes embedded call or put options. Option-adjusted spread is a different measure and may be more appropriate for callable securities.\u003c\/li\u003e\n          \u003cli\u003eDo not interpret a spread as a direct default probability. Review issuer financials, covenants, recovery expectations, and ratings alongside the spread. The \u003ca href=\"https:\/\/www.sec.gov\/resources-for-investors\/investor-alerts-bulletins\/corporate-bonds\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eU.S. SEC’s corporate bond guidance\u003c\/a\u003e outlines key bond risks.\u003c\/li\u003e\n          \u003cli\u003eUse consistent market timestamps. Comparing a live corporate quote with a stale government yield can create a false spread. The \u003ca href=\"https:\/\/fred.stlouisfed.org\/categories\/115\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eFederal Reserve’s FRED interest-rate series\u003c\/a\u003e is useful for historical benchmark context.\u003c\/li\u003e\n          \u003cli\u003eReview trading and pricing details before acting. \u003ca href=\"https:\/\/www.finra.org\/investors\/investing\/investment-products\/bonds\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eFINRA’s bond investor resources\u003c\/a\u003e explain pricing, yield, liquidity, and transaction considerations.\u003c\/li\u003e\n        \u003c\/ul\u003e\n        \u003cp\u003eThis calculator is an analytical aid and does not provide personalized investment, legal, or tax advice.\u003c\/p\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e","brand":"FinancialModelsLab","offers":[{"title":"Default Title","offer_id":49909485175027,"sku":"credit-spread","price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6191\/2762\/files\/credit-spread.webp?v=1783935464","url":"https:\/\/financialmodelslab.com\/products\/credit-spread","provider":"Financial Models Lab","version":"1.0","type":"link"}