{
  "insurer": {
    "id": "royal-sundaram",
    "slug": "royal-sundaram",
    "name": "Royal Sundaram General Insurance",
    "seo_name": "Royal Sundaram General Insurance",
    "type": "general",
    "irdai_registration_number": "102",
    "registration_status": "active",
    "headquarters": "Chennai",
    "website": "https://www.royalsundaram.in",
    "disclosure_url": "https://www.royalsundaram.in/about-us/public-disclosures"
  },
  "facts": [
    {
      "id": "00b9bb1d-5516-466f-a8b6-9944c4ee7ea1",
      "metric_id": "distribution.general.channel.micro_agents.policies",
      "metric_name": "Micro Agents policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0199b1ad-648d-4bc8-8794-d753e8a938e3",
      "metric_id": "financial.investment_mix.segment.equity_preference_shares",
      "metric_name": "equity & preference shares",
      "value": 95946,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "04772ead-76fe-4b6c-8d09-8e76e80c02b2",
      "metric_id": "financial.combined_ratio.segment.personal_accident",
      "metric_name": "personal accident combined ratio",
      "value": 117.8,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0cfe3e3e-dfe2-463a-8cc8-1297f63c5439",
      "metric_id": "distribution.general.channel.individual_agents.premium",
      "metric_name": "Individual Agents premium",
      "value": 8787,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0e3d5d0f-0802-4313-9f1e-8122ef1cc6a1",
      "metric_id": "financial.incurred_claim_ratio.segment.engineering",
      "metric_name": "engineering incurred claims ratio",
      "value": 147.4,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "157e8a0a-6e42-4ec0-8ea2-b36b5e55cc44",
      "metric_id": "financial.gdp_to_networth_ratio",
      "metric_name": "gross direct premium to net worth ratio",
      "value": 69,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md. | Corrected 2026-10-26: unit-convention fix. IRDAI NL-20's 'Gross Direct Premium to Net Worth' row is filed industry-wide as a raw multiple (times), not a percentage -- confirmed against 7 insurers' own official PDFs (Reliance General, Cholamandalam MS, New India Assurance, Agriculture Insurance, National Insurance, Oriental Insurance all print the bare multiple, no % sign; only Generali Central's own form already prints a true percentage). Site declares this metric's unit as %, so multiplied by 100 to match.",
        "source_page": null
      }
    },
    {
      "id": "19d9c9cf-c6ca-42ae-b76e-d232b1cad290",
      "metric_id": "financial.investment_yield.gross.quarterly",
      "metric_name": "gross yield (quarterly)",
      "value": 2.46,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-31-INVESTMENT-INCOME",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "1beb2cb5-dc9c-4bd9-956e-0d51a5a86ce5",
      "metric_id": "financial.combined_ratio.segment.motor_tp",
      "metric_name": "motor tp combined ratio",
      "value": 115.5,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "219a2bbf-4a68-4e30-98c3-ad0e17d64cb7",
      "metric_id": "financial.investment_exposure.central_govt_securities_pct",
      "metric_name": "central govt. securities",
      "value": 21.75,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2200d475-a761-4034-9570-d5cadda29cae",
      "metric_id": "financial.gross_direct_premium.segment.health",
      "metric_name": "health segment premium",
      "value": 42686,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "29fe97d8-86b2-4559-ad92-55c4ee02c23f",
      "metric_id": "financial.gross_direct_premium.segment.marine_cargo",
      "metric_name": "marine cargo segment premium",
      "value": 2622,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2c4f05c9-8e91-494a-999a-63f16c5c9f68",
      "metric_id": "financial.combined_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation combined ratio",
      "value": 179.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2f89069b-6d1f-49fc-bdd9-39b36ff51787",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_od",
      "metric_name": "motor od incurred claims ratio",
      "value": 84.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "314fc6ce-cca0-4978-9528-893479f4050a",
      "metric_id": "distribution.general.channel.common_service_centres.premium",
      "metric_name": "Common Service Centres (CSC) premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "371792e4-41ae-4c8c-b537-d41600a23895",
      "metric_id": "financial.investment_mix.segment.infrastructure_housing",
      "metric_name": "infrastructure & housing",
      "value": 156865,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3a14b7bd-bf50-4d25-bd69-587dfa320152",
      "metric_id": "financial.incurred_claim_ratio.segment.fire",
      "metric_name": "fire incurred claims ratio",
      "value": 65.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3ae3769b-908d-4b93-88d6-c6ae17a7c85c",
      "metric_id": "financial.investment_income_ratio",
      "metric_name": "investment income ratio",
      "value": 2.4,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3b733f48-b6f4-434b-951f-5b79e8afd8db",
      "metric_id": "financial.gross_direct_premium.segment.fire",
      "metric_name": "fire segment premium",
      "value": 10449,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3e84e32c-5de4-404f-8b5d-7e334cf9c476",
      "metric_id": "financial.incurred_claim_ratio.segment.travel",
      "metric_name": "travel incurred claims ratio",
      "value": 24.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3fbaaf93-1425-45b2-a5b1-ff6b678734e6",
      "metric_id": "distribution.general.channel.brokers.premium",
      "metric_name": "Brokers premium",
      "value": 92437,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4c74632b-c9dd-4777-8cfa-c87060120e39",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.05,
      "unit": "x",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q1 FY26-27",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 solvency ratio regex",
        "source_page": null
      }
    },
    {
      "id": "4d52af06-749d-4311-a1e1-8d9e7787dab9",
      "metric_id": "financial.investment_mix.segment.government_securities",
      "metric_name": "government securities",
      "value": 316446,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "559b486d-44b1-496c-b35f-537ccf741a1e",
      "metric_id": "financial.investment_exposure.govt_and_approved_securities_pct",
      "metric_name": "govt + approved securities",
      "value": 32.03,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5b639a94-cac0-442b-a810-758cf0595458",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 86,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "62b2049d-e62c-412f-ae17-77690e7383ec",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_tp",
      "metric_name": "motor tp incurred claims ratio",
      "value": 80.4,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "63c101a6-2ba0-47e6-976e-d15902222e50",
      "metric_id": "distribution.general.channel.corporate_agents_banks.premium",
      "metric_name": "Corporate Agents – Banks premium",
      "value": 1366,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6451b983-81d6-4b49-9840-19e4ed1ccd64",
      "metric_id": "financial.combined_ratio.segment.fire",
      "metric_name": "fire combined ratio",
      "value": 110,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "651a3fc0-ffc4-457f-a9ad-a80448d9f8cc",
      "metric_id": "financial.gross_direct_premium.segment.motor_od",
      "metric_name": "motor OD segment premium",
      "value": 25303,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "66376d1e-b071-4cc3-9c6b-639022d4fa5b",
      "metric_id": "financial.investment_npa.provision_pct",
      "metric_name": "npa provision coverage",
      "value": 84.84,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6934c75b-461d-4552-8a5f-3d5233ac1fa6",
      "metric_id": "financial.net_retention_ratio",
      "metric_name": "net retention ratio",
      "value": 81,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "696d3edc-d43a-480e-a7b8-ab52dfb92a8d",
      "metric_id": "financial.combined_ratio.segment.health",
      "metric_name": "health combined ratio",
      "value": 112.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "69ed0164-9879-47b2-9191-b87f81c2cdc3",
      "metric_id": "financial.gdp_growth_rate",
      "metric_name": "gross direct premium growth rate",
      "value": 10.8,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6aed0362-b5a9-4923-856b-f1bb35df1cf4",
      "metric_id": "financial.combined_ratio",
      "metric_name": "combined ratio",
      "value": 116.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6b31e307-b819-45dd-9277-5575c9dc8142",
      "metric_id": "financial.profit_after_tax",
      "metric_name": "profit after tax",
      "value": 26.85,
      "unit": "crore",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6bd81f7d-6eb4-499d-955a-28c264f70589",
      "metric_id": "distribution.general.channel.other.premium",
      "metric_name": "Other premium",
      "value": 4055,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6c7aafdf-3f35-4b02-b019-44ead4deb7c4",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.policies",
      "metric_name": "Direct Business – Officers/Employees policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6ce5fcc0-eb79-48a1-8258-ac652692a0f4",
      "metric_id": "financial.incurred_claim_ratio.segment.personal_accident",
      "metric_name": "personal accident incurred claims ratio",
      "value": 70.5,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "74b5d0bd-c7bd-48e1-a962-9c00f8707d3d",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.policies",
      "metric_name": "Insurance Marketing Firm policies",
      "value": 4219,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "77d308a6-ff0b-4101-a22f-6ed12aaa0687",
      "metric_id": "financial.incurred_claim_ratio.segment.liability",
      "metric_name": "liability incurred claims ratio",
      "value": 25.8,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7ab5c388-8def-40c6-962b-8d0bed0dfbe0",
      "metric_id": "financial.expense_ratio.nonlife.nwp",
      "metric_name": "expense ratio",
      "value": 30.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7da80305-9a0b-4a95-8987-6c23b1a7ac60",
      "metric_id": "financial.profit_before_tax",
      "metric_name": "profit before tax",
      "value": 36.87,
      "unit": "crore",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8035014a-2fcb-4bf4-8d8f-3d577db550ad",
      "metric_id": "financial.investment_npa.gross_amount",
      "metric_name": "gross npa (amount)",
      "value": 570.87,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "824ef8ac-e756-45cb-9f6b-f397ee4f0b36",
      "metric_id": "financial.combined_ratio.segment.marine_cargo",
      "metric_name": "marine cargo combined ratio",
      "value": 125.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "83a39c83-0467-45de-a999-24d4bb5a5ffe",
      "metric_id": "distribution.general.channel.web_aggregators.policies",
      "metric_name": "Web Aggregators policies",
      "value": 21,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8b5c403c-fdaa-4919-ae37-053d9a1234f4",
      "metric_id": "financial.gross_direct_premium.segment.workmens_compensation",
      "metric_name": "workmen's compensation segment premium",
      "value": 456,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8c1576ce-bfbc-4c13-9789-9b494e8bd024",
      "metric_id": "financial.networth_growth_rate",
      "metric_name": "net worth growth rate",
      "value": 2,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8c92ec35-85e8-4425-be82-710e5355c494",
      "metric_id": "distribution.general.channel.misp_direct.premium",
      "metric_name": "MISP (Direct) premium",
      "value": 210,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8c962d6f-22f5-428a-804d-3b146408ef39",
      "metric_id": "distribution.general.channel.brokers.policies",
      "metric_name": "Brokers policies",
      "value": 290309,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8cd269a6-4374-4047-89f5-8065b19f79cb",
      "metric_id": "distribution.general.channel.corporate_agents_others.policies",
      "metric_name": "Corporate Agents – Others policies",
      "value": 19250,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8df72ed7-ea2a-4c7e-9840-683ec0245b56",
      "metric_id": "financial.net_commission_ratio",
      "metric_name": "net commission ratio",
      "value": 19.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "913749f0-733f-4609-9385-a568e4808b27",
      "metric_id": "financial.available_solvency_margin",
      "metric_name": "available solvency margin",
      "value": 184006,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q1 FY26-27",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 ASM regex",
        "source_page": null
      }
    },
    {
      "id": "96a47994-8e7f-4ea5-8dd8-0824342a8ae8",
      "metric_id": "distribution.general.channel.web_aggregators.premium",
      "metric_name": "Web Aggregators premium",
      "value": 7,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9caab3d4-ce4b-4fea-9e85-ea78d96805d3",
      "metric_id": "financial.incurred_claim_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation incurred claims ratio",
      "value": 136,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9d08c4b2-9ef1-49b6-961c-5896f731df9c",
      "metric_id": "financial.underwriting_balance_ratio",
      "metric_name": "underwriting balance ratio",
      "value": -21,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9fd4b92e-1f2d-44ae-a94a-4a0d3ba17886",
      "metric_id": "financial.gross_direct_premium.segment.liability",
      "metric_name": "liability segment premium",
      "value": 550,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9ff876b4-9157-4beb-8fba-afd382d3c1a7",
      "metric_id": "financial.gross_direct_premium.segment.motor_tp",
      "metric_name": "motor TP segment premium",
      "value": 40596,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a41ef7c6-3f98-40ba-8bab-e4b4e66f56e4",
      "metric_id": "financial.gross_direct_premium.segment.travel",
      "metric_name": "travel segment premium",
      "value": 41,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a76011ed-060e-4730-b255-4e5b2079f074",
      "metric_id": "distribution.general.channel.common_service_centres.policies",
      "metric_name": "Common Service Centres (CSC) policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ac18a1d3-e7e2-48ae-8315-6b1c5601844d",
      "metric_id": "financial.investment_yield.net.quarterly",
      "metric_name": "net yield (quarterly)",
      "value": 2.46,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-31-INVESTMENT-INCOME",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b1e40612-c721-4076-9724-1af866675c16",
      "metric_id": "distribution.general.channel.misp_direct.policies",
      "metric_name": "MISP (Direct) policies",
      "value": 1660,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b688523e-aa3d-4ccd-b9cb-7685c6c5c4a1",
      "metric_id": "financial.combined_ratio.segment.engineering",
      "metric_name": "engineering combined ratio",
      "value": 229,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ba3d1e3a-6d3e-4b8e-8cca-9532f2067614",
      "metric_id": "financial.claims_paid_to_provisioned_ratio",
      "metric_name": "claims paid to provisioned ratio",
      "value": 9.6,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "bd08b454-4a01-46b3-a66d-dc3c2f16e078",
      "metric_id": "financial.required_solvency_margin",
      "metric_name": "required solvency margin",
      "value": 89975,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q1 FY26-27",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 RSM regex",
        "source_page": null
      }
    },
    {
      "id": "bd1531d9-6aa0-481a-a1bf-981f9eb9945b",
      "metric_id": "financial.incurred_claim_ratio.segment.health",
      "metric_name": "health incurred claims ratio",
      "value": 100.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c1a47c4e-75c2-467a-a6e2-734659d15b5f",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.premium",
      "metric_name": "Insurance Marketing Firm premium",
      "value": 313,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c411813e-c896-48cd-895b-d015ed557bc9",
      "metric_id": "financial.investment_mix.segment.debentures_bonds",
      "metric_name": "debentures & bonds",
      "value": 329442,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c4957b1b-29bb-42da-83a6-0a5385a83bce",
      "metric_id": "distribution.general.channel.individual_agents.policies",
      "metric_name": "Individual Agents policies",
      "value": 50754,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c804365e-a5cd-408a-b9ad-0a43f87e7b15",
      "metric_id": "financial.investment_exposure.housing_infra_pct",
      "metric_name": "housing & infrastructure",
      "value": 30.78,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c9970eb1-62eb-4284-ba23-a09e8e94196c",
      "metric_id": "financial.gross_direct_premium.segment.engineering",
      "metric_name": "engineering segment premium",
      "value": 2550,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d03abc6d-081e-4107-b0ae-66ba1f53e0ea",
      "metric_id": "financial.gross_direct_premium.segment.personal_accident",
      "metric_name": "personal accident segment premium",
      "value": 2622,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d2414997-f369-4194-9bd7-81bc63ad59f9",
      "metric_id": "financial.combined_ratio.segment.travel",
      "metric_name": "travel combined ratio",
      "value": 72,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d56eb6ce-3b4a-4c6e-be5d-218197cea4c3",
      "metric_id": "financial.combined_ratio.segment.motor_od",
      "metric_name": "motor od combined ratio",
      "value": 132.7,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d614fc5a-52f9-4ae4-9ac2-ed1ed444929e",
      "metric_id": "distribution.general.channel.corporate_agents_others.premium",
      "metric_name": "Corporate Agents – Others premium",
      "value": 6831,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d7ca1718-718d-4a1e-8bc2-876184c510a9",
      "metric_id": "financial.investment_npa.gross_pct",
      "metric_name": "gross npa ratio",
      "value": 0.06,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d949c3cf-eb9b-4c76-a503-cedd4ffbd60a",
      "metric_id": "financial.operating_profit_ratio",
      "metric_name": "operating profit ratio",
      "value": 0,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d9d2c648-c20d-456f-b47e-09733e117302",
      "metric_id": "distribution.general.channel.pos_direct.policies",
      "metric_name": "Point of Sales Person (Direct) policies",
      "value": 61893,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "dc83edfe-7a8a-4164-85d0-9a0cb1f5f398",
      "metric_id": "distribution.general.channel.corporate_agents_banks.policies",
      "metric_name": "Corporate Agents – Banks policies",
      "value": 8526,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "df4f337f-1908-481b-822c-1b4d0fae185d",
      "metric_id": "distribution.general.channel.direct_business_online.premium",
      "metric_name": "Direct Business – Online premium",
      "value": 1041,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "df9d7a23-d83d-44a4-aa6e-4892bd6a9257",
      "metric_id": "distribution.general.channel.micro_agents.premium",
      "metric_name": "Micro Agents premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e018d8f9-65c1-4330-ad52-a05f79c193fa",
      "metric_id": "financial.incurred_claim_ratio.segment.marine_cargo",
      "metric_name": "marine cargo incurred claims ratio",
      "value": 85.4,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e2547461-c9dc-42b7-b5e5-3148457b9e58",
      "metric_id": "financial.expense_ratio.nonlife.gdp",
      "metric_name": "expense ratio to gross premium",
      "value": 28.7,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e3c6e7b7-8fee-4d8d-bc56-dbaec3faf57c",
      "metric_id": "financial.combined_ratio.segment.liability",
      "metric_name": "liability combined ratio",
      "value": 71.1,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e51412db-d37a-44c8-9d12-c45ce2e0ab67",
      "metric_id": "distribution.general.channel.direct_business_online.policies",
      "metric_name": "Direct Business – Online policies",
      "value": 8117,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e81edb93-2f29-414b-b3df-eaaa839c755d",
      "metric_id": "distribution.general.channel.pos_direct.premium",
      "metric_name": "Point of Sales Person (Direct) premium",
      "value": 13477,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "eaf204ac-60d6-4b24-8232-179928f590a1",
      "metric_id": "financial.technical_reserves_to_premium_ratio",
      "metric_name": "technical reserves to premium ratio",
      "value": 7.64,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "efaf6739-92d7-4831-84b8-ee9f01139b95",
      "metric_id": "financial.investment_mix.segment.other_investments",
      "metric_name": "other investments",
      "value": 104613,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f1a65087-1b83-4e2c-9326-7955bd7e6b27",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.premium",
      "metric_name": "Direct Business – Officers/Employees premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "fc0eff4a-53ff-48c1-b5a4-21b15be7544d",
      "metric_id": "distribution.general.channel.other.policies",
      "metric_name": "Other policies",
      "value": 4951,
      "unit": "count",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "textplor-vendor-2026-27-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0505ee59-9e2f-4d83-b68f-1cb945e03628",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.premium",
      "metric_name": "Direct Business – Officers/Employees premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0aa4bbfc-8781-4694-a5de-75184766ed66",
      "metric_id": "financial.investment_mix.segment.debentures_bonds",
      "metric_name": "debentures & bonds",
      "value": 316973,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0c6c2002-790b-4dee-8d43-67f20954ef32",
      "metric_id": "distribution.general.channel.common_service_centres.premium",
      "metric_name": "Common Service Centres (CSC) premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0fb707d2-8648-4ade-bffd-e6fbf05a4868",
      "metric_id": "financial.gross_direct_premium.segment.marine_hull",
      "metric_name": "marine hull segment premium",
      "value": 3,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "12aef56a-c310-4fa8-acc6-fc98b1a24892",
      "metric_id": "financial.incurred_claim_ratio.segment.liability",
      "metric_name": "liability incurred claims ratio",
      "value": 20.7,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, liability row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "12d4d51d-9fcf-4e56-a2b9-3d0de4e3019a",
      "metric_id": "financial.book_value_per_share",
      "metric_name": "book value per share",
      "value": 40.92,
      "unit": "INR",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: book_value_per_share",
        "source_page": null
      }
    },
    {
      "id": "165c7e85-0953-451b-a3a5-03f2b504d1b7",
      "metric_id": "financial.combined_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation combined ratio",
      "value": 168.4,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, workmens_compensation row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "2215951f-094b-4d88-ba4c-3279aaaf93b8",
      "metric_id": "distribution.general.channel.misp_direct.premium",
      "metric_name": "MISP (Direct) premium",
      "value": 195,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "23a4451e-7b97-4fe8-9fdd-f0981cdf8140",
      "metric_id": "financial.investment_npa.provision_pct",
      "metric_name": "npa provision coverage",
      "value": 84.84,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "23d0f9c3-e745-4b08-b963-606f03c5eca4",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.policies",
      "metric_name": "Insurance Marketing Firm policies",
      "value": 7561,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "23ea2452-fe3c-47a5-a00b-73c810b2b6cb",
      "metric_id": "financial.combined_ratio.segment.travel",
      "metric_name": "travel combined ratio",
      "value": -17.7,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, travel row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "24ff6a96-6ba4-4220-9599-c812d150e086",
      "metric_id": "financial.gross_npa_ratio",
      "metric_name": "gross NPA ratio",
      "value": 0.06,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: gross_npa_ratio",
        "source_page": null
      }
    },
    {
      "id": "26eb3adb-9ccb-42da-9f26-f23821fb9ffa",
      "metric_id": "financial.incurred_claim_ratio.segment.engineering",
      "metric_name": "engineering incurred claims ratio",
      "value": 52.6,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, engineering row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "2a77b8c8-1916-4610-a6c9-dbbeebfac799",
      "metric_id": "financial.investment_income_ratio",
      "metric_name": "investment income ratio",
      "value": 1.8,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: investment_income_ratio",
        "source_page": null
      }
    },
    {
      "id": "2c08a664-e6b3-4aa8-9b62-b957ca84973d",
      "metric_id": "financial.net_earning_ratio",
      "metric_name": "net earning ratio",
      "value": 2.5,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: net_earning_ratio",
        "source_page": null
      }
    },
    {
      "id": "2d06c74a-3d5f-4c53-9762-8373cf656c68",
      "metric_id": "financial.combined_ratio.segment.marine_cargo",
      "metric_name": "marine cargo combined ratio",
      "value": 188.7,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, marine_cargo row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "2dd54a03-c35d-4c46-b2be-94380a37576f",
      "metric_id": "financial.incurred_claim_ratio.segment.marine_cargo",
      "metric_name": "marine cargo incurred claims ratio",
      "value": 145.2,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, marine_cargo row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "31d320ea-6ea3-4e8f-b23f-875ad41aa177",
      "metric_id": "financial.gross_direct_premium.segment.engineering",
      "metric_name": "engineering segment premium",
      "value": 2918,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "35e58199-4b70-493c-92f3-17e7be4d3c15",
      "metric_id": "financial.investment_mix.segment.infrastructure_housing",
      "metric_name": "infrastructure & housing",
      "value": 136990,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "38078d18-423f-4b9a-9f66-90bedd07abb3",
      "metric_id": "financial.gross_direct_premium.segment.motor_tp",
      "metric_name": "motor TP segment premium",
      "value": 51143,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3fb74a16-9faa-446d-ace8-9698bf5cab6f",
      "metric_id": "financial.investment_npa.gross_amount",
      "metric_name": "gross npa (amount)",
      "value": 570.87,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "418ec30d-53b0-4f52-9363-fb2969b5576f",
      "metric_id": "distribution.general.channel.direct_business_others.policies",
      "metric_name": "Direct Business – Others policies",
      "value": 63020,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4199315c-0367-45e7-be41-c6543ca1c89d",
      "metric_id": "financial.profit_after_tax",
      "metric_name": "profit after tax",
      "value": 26.62,
      "unit": "crore",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "41f7092d-3efb-4cdf-8ed5-ddaaa33e3eba",
      "metric_id": "distribution.general.channel.corporate_agents_banks.premium",
      "metric_name": "Corporate Agents – Banks premium",
      "value": 1373,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "44b9e2a3-3a49-4010-ab08-bd66e2c226a2",
      "metric_id": "financial.investment_mix.segment.equity_preference_shares",
      "metric_name": "equity & preference shares",
      "value": 65643,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4649607c-4b1b-4c7a-a5fb-2717016885e7",
      "metric_id": "financial.combined_ratio.segment.personal_accident",
      "metric_name": "personal accident combined ratio",
      "value": 119.2,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, personal_accident row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "46862cc6-535a-49c7-b53f-929dde109735",
      "metric_id": "financial.combined_ratio.segment.motor_tp",
      "metric_name": "motor tp combined ratio",
      "value": 108.1,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, motor_tp row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "4852f07d-d19c-4e95-8ce7-59ecf8505cf8",
      "metric_id": "financial.gdp_to_networth_ratio",
      "metric_name": "gross direct premium to net worth ratio",
      "value": 66,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: gdp_to_networth_ratio",
        "source_page": null
      }
    },
    {
      "id": "4b684f82-7255-4517-aa67-3b8ad1a141f6",
      "metric_id": "financial.incurred_claim_ratio.segment.health",
      "metric_name": "health incurred claims ratio",
      "value": 97.1,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, health row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "52af0e96-6d67-4b1d-8abc-2d147f0f8d37",
      "metric_id": "financial.incurred_claim_ratio.segment.personal_accident",
      "metric_name": "personal accident incurred claims ratio",
      "value": 72.2,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, personal_accident row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "54fbbe18-8e40-434d-a2ea-3943e07b04ae",
      "metric_id": "financial.net_commission_ratio",
      "metric_name": "net commission ratio",
      "value": 22.5,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: net_commission_ratio",
        "source_page": null
      }
    },
    {
      "id": "57940710-1569-4b1a-88e4-3c70ced1f4a7",
      "metric_id": "financial.gross_direct_premium.segment.workmens_compensation",
      "metric_name": "workmen's compensation segment premium",
      "value": 437,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "591b5372-79ff-443e-bad8-5ef5753ee70a",
      "metric_id": "financial.combined_ratio.segment.fire",
      "metric_name": "fire combined ratio",
      "value": 125,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, fire row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "59f25f8c-7961-40a3-9c5b-bdc51c0ab254",
      "metric_id": "financial.investment_exposure.housing_infra_pct",
      "metric_name": "housing & infrastructure",
      "value": 27.32,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5d71405e-c97d-44fd-8476-b22dc27ade79",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.policies",
      "metric_name": "Direct Business – Officers/Employees policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "60853cd9-8a58-43c7-83c7-34e3f58eb685",
      "metric_id": "distribution.general.channel.individual_agents.policies",
      "metric_name": "Individual Agents policies",
      "value": 73965,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "64112bbc-cdb1-48c0-9b56-5ab6d6e531fa",
      "metric_id": "financial.incurred_claim_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation incurred claims ratio",
      "value": 120.6,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, workmens_compensation row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "6851c907-7b53-4f48-b8f3-3ede22dccdb1",
      "metric_id": "distribution.general.channel.direct_business_online.premium",
      "metric_name": "Direct Business – Online premium",
      "value": 2107,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6a1aa8ba-b23c-415c-b6c2-35228b3d4b1f",
      "metric_id": "distribution.general.channel.pos_direct.policies",
      "metric_name": "Point of Sales Person (Direct) policies",
      "value": 102583,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6a2e808f-3bd0-4bf2-977f-9e2065512450",
      "metric_id": "financial.gross_direct_premium.segment.travel",
      "metric_name": "travel segment premium",
      "value": 23,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "72c09e26-f3cf-462a-8ce9-acd4f3299024",
      "metric_id": "distribution.general.channel.corporate_agents_others.premium",
      "metric_name": "Corporate Agents – Others premium",
      "value": 9360,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "77fa3def-c92a-402e-af62-905a3ec6903d",
      "metric_id": "financial.investment_yield.net.annualized",
      "metric_name": "net yield (annualized)",
      "value": 8.49,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-31-INVESTMENT-INCOME",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7a01e62b-f124-4511-87bd-733e1d68b3e3",
      "metric_id": "distribution.general.channel.web_aggregators.policies",
      "metric_name": "Web Aggregators policies",
      "value": -121618,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8544fba5-76a4-4dc9-b4e5-6da1bbee6c17",
      "metric_id": "financial.incurred_claim_ratio.segment.travel",
      "metric_name": "travel incurred claims ratio",
      "value": -66,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, travel row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "85b3f000-393c-4957-9ff0-bc33f72d88c4",
      "metric_id": "distribution.general.channel.web_aggregators.premium",
      "metric_name": "Web Aggregators premium",
      "value": -13487,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "87d8ea93-c5f5-4a2e-8b83-efd7717dea4d",
      "metric_id": "financial.incurred_claim_ratio.segment.fire",
      "metric_name": "fire incurred claims ratio",
      "value": 43.2,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, fire row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "899f570a-2690-4833-9356-be98737fa101",
      "metric_id": "financial.combined_ratio.segment.engineering",
      "metric_name": "engineering combined ratio",
      "value": 98.3,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, engineering row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "8f200de2-7980-4bf9-8523-b077eca60fd4",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_od",
      "metric_name": "motor od incurred claims ratio",
      "value": 81.3,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, motor_od row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "8f61f61e-b681-4405-9027-4c2caae5c2da",
      "metric_id": "financial.net_npa_ratio",
      "metric_name": "net NPA ratio",
      "value": 0.01,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: net_npa_ratio",
        "source_page": null
      }
    },
    {
      "id": "90cd2471-5bf8-4f77-a563-ff359fdc9dec",
      "metric_id": "financial.expense_ratio.nonlife.gdp",
      "metric_name": "expense ratio to gross premium",
      "value": 30.5,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: expense_gdp",
        "source_page": null
      }
    },
    {
      "id": "995b0211-19d8-41a0-b540-900a56171d0c",
      "metric_id": "financial.investment_mix.segment.other_investments",
      "metric_name": "other investments",
      "value": 111799,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9ddd905e-612b-4b76-b32f-f912fc46cdf8",
      "metric_id": "distribution.general.channel.common_service_centres.policies",
      "metric_name": "Common Service Centres (CSC) policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a3346352-d96f-444e-8be8-eb9aafe39d85",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 75.9,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: icr",
        "source_page": null
      }
    },
    {
      "id": "a4235ed6-5b31-47ef-b0af-2116458fe4e8",
      "metric_id": "distribution.general.channel.micro_agents.premium",
      "metric_name": "Micro Agents premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a65edd88-5238-4c78-b603-ac49949ced6a",
      "metric_id": "financial.investment_mix.segment.government_securities",
      "metric_name": "government securities",
      "value": 324206,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a8c24f29-41b6-499c-b3fe-ec6e39548331",
      "metric_id": "financial.operating_profit_ratio",
      "metric_name": "operating profit ratio",
      "value": 0,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: operating_profit_ratio",
        "source_page": null
      }
    },
    {
      "id": "aff1a780-6920-4529-b791-b6cfca33f40d",
      "metric_id": "financial.debt_equity_ratio",
      "metric_name": "debt to equity ratio",
      "value": 0.07,
      "unit": "ratio",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: debt_equity_ratio",
        "source_page": null
      }
    },
    {
      "id": "b152fa9d-76df-440d-9abe-721580dabb20",
      "metric_id": "distribution.general.channel.brokers.policies",
      "metric_name": "Brokers policies",
      "value": 694319,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b17eb028-936d-4c5f-9e4e-0dc3db70f1a2",
      "metric_id": "financial.expense_ratio.nonlife.nwp",
      "metric_name": "expense ratio",
      "value": 33.2,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: expense_nwp",
        "source_page": null
      }
    },
    {
      "id": "b38dd41f-2c68-4105-9a5f-f2dc4b87025d",
      "metric_id": "financial.net_retention_ratio",
      "metric_name": "net retention ratio",
      "value": 84.1,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: net_retention",
        "source_page": null
      }
    },
    {
      "id": "ba5ad59a-4fcc-489d-ab82-f0670ce1cadc",
      "metric_id": "financial.combined_ratio",
      "metric_name": "combined ratio",
      "value": 109.1,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: combined_ratio",
        "source_page": null
      }
    },
    {
      "id": "be3020fb-cb1a-471b-a766-05109fab8c7a",
      "metric_id": "distribution.general.channel.brokers.premium",
      "metric_name": "Brokers premium",
      "value": 91735,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c747a403-774c-4159-902a-5785d5ba41e4",
      "metric_id": "distribution.general.channel.corporate_agents_others.policies",
      "metric_name": "Corporate Agents – Others policies",
      "value": 30463,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c7edb870-5798-4e46-b8e4-d1c6d9695807",
      "metric_id": "financial.networth_growth_rate",
      "metric_name": "net worth growth rate",
      "value": 5.7,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: networth_growth_rate",
        "source_page": null
      }
    },
    {
      "id": "cb5df04e-3919-4f6e-9c26-551a5d0cfdc6",
      "metric_id": "financial.gross_direct_premium.segment.motor_od",
      "metric_name": "motor OD segment premium",
      "value": 26732,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "cbce00f2-2442-40d6-af47-40628600ad1d",
      "metric_id": "financial.gdp_growth_rate",
      "metric_name": "gross direct premium growth rate",
      "value": 29,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: gdp_growth_rate",
        "source_page": null
      }
    },
    {
      "id": "cdac7e43-8265-451c-b373-90a0118defd1",
      "metric_id": "financial.investment_exposure.central_govt_securities_pct",
      "metric_name": "central govt. securities",
      "value": 23.32,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ceb814d4-9316-4abc-95f5-88c3098047e3",
      "metric_id": "financial.profit_before_tax",
      "metric_name": "profit before tax",
      "value": 35.88,
      "unit": "crore",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d3726f33-99c6-405f-bdbc-a76436d4e467",
      "metric_id": "financial.investment_yield.gross.annualized",
      "metric_name": "gross yield (annualized)",
      "value": 8.49,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-31-INVESTMENT-INCOME",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d3a887fc-383b-422d-86b2-72123c714047",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.premium",
      "metric_name": "Insurance Marketing Firm premium",
      "value": 242,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d4428b44-ba09-49a4-b4d3-2dce78d03ff9",
      "metric_id": "financial.gross_direct_premium.segment.personal_accident",
      "metric_name": "personal accident segment premium",
      "value": 1856,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d53b97c9-0026-4320-a07d-8b56ff477d44",
      "metric_id": "financial.combined_ratio.segment.liability",
      "metric_name": "liability combined ratio",
      "value": 57.6,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, liability row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "d5d81950-467c-4dd5-bae2-40f5bb6f71c4",
      "metric_id": "financial.underwriting_balance_ratio",
      "metric_name": "underwriting balance ratio",
      "value": -16,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: underwriting_balance",
        "source_page": null
      }
    },
    {
      "id": "d61e88b2-531f-4e03-a306-3eb525ec2f34",
      "metric_id": "distribution.general.channel.micro_agents.policies",
      "metric_name": "Micro Agents policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d649e8dd-f948-4276-831f-12d722816258",
      "metric_id": "distribution.general.channel.direct_business_others.premium",
      "metric_name": "Direct Business – Others premium",
      "value": 1600,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "defdd877-22cc-450c-bf0a-d18d5da0fbe4",
      "metric_id": "financial.gross_direct_premium.segment.marine_cargo",
      "metric_name": "marine cargo segment premium",
      "value": 2075,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e3384a7f-a8ff-46cb-9900-7a0858e15541",
      "metric_id": "financial.gross_direct_premium.segment.fire",
      "metric_name": "fire segment premium",
      "value": 7854,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e4ce14fe-d7bb-4724-b064-024d70234cb9",
      "metric_id": "distribution.general.channel.direct_business_online.policies",
      "metric_name": "Direct Business – Online policies",
      "value": 14117,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e5c557fa-3fc2-4c21-b214-ee1817a75b9a",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_tp",
      "metric_name": "motor tp incurred claims ratio",
      "value": 69.9,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, motor_tp row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "e5f50568-ee8e-4afe-a09b-3c1af3e294c7",
      "metric_id": "distribution.general.channel.individual_agents.premium",
      "metric_name": "Individual Agents premium",
      "value": 10439,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e920ec57-ebd7-4894-8412-5851c6df9f8c",
      "metric_id": "financial.gross_direct_premium.segment.health",
      "metric_name": "health segment premium",
      "value": 27231,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e965ecdb-e110-437d-8b4a-f9c5a240119c",
      "metric_id": "financial.combined_ratio.segment.health",
      "metric_name": "health combined ratio",
      "value": 114.8,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, health row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "ec9fbc53-71a6-42e2-a0d5-e029e83ba97a",
      "metric_id": "financial.earnings_per_share",
      "metric_name": "earnings per share",
      "value": 0.59,
      "unit": "INR",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 row-format label match: eps",
        "source_page": null
      }
    },
    {
      "id": "ee739fdf-61e7-4bdd-b2a8-2029eecc52e3",
      "metric_id": "financial.combined_ratio.segment.motor_od",
      "metric_name": "motor od combined ratio",
      "value": 125.2,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL-20_Annual_FY2025-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 segmental table, motor_od row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "f027fa8e-713f-48f9-8712-ee5cb873a359",
      "metric_id": "distribution.general.channel.misp_direct.policies",
      "metric_name": "MISP (Direct) policies",
      "value": 8154,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f5e98a52-bc3f-43cc-8dc5-9b956a0841b4",
      "metric_id": "financial.investment_exposure.govt_and_approved_securities_pct",
      "metric_name": "govt + approved securities",
      "value": 33.96,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f62f482d-9446-4813-a4e9-df8b7a183996",
      "metric_id": "distribution.general.channel.pos_direct.premium",
      "metric_name": "Point of Sales Person (Direct) premium",
      "value": 18308,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "fad40c59-e6cd-4b0c-90e2-9342d6908642",
      "metric_id": "distribution.general.channel.corporate_agents_banks.policies",
      "metric_name": "Corporate Agents – Banks policies",
      "value": 10853,
      "unit": "count",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "fe215fd4-a8ec-4bfe-88bf-72215fd2ea56",
      "metric_id": "financial.gross_direct_premium.segment.liability",
      "metric_name": "liability segment premium",
      "value": 391,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q4 FY25-26",
        "source_document": "textplor-vendor-2025-26-FY.xlsx minus 9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "07c0e694-76c8-4b3e-a556-32bab6da5502",
      "metric_id": "financial.book_value_per_share",
      "metric_name": "book value per share",
      "value": 40.88,
      "unit": "INR",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: book_value_per_share",
        "source_page": null
      }
    },
    {
      "id": "07fb48fd-b2a3-48cc-b032-d2a27b115c63",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.17,
      "unit": "x",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 solvency ratio regex",
        "source_page": null
      }
    },
    {
      "id": "0ad2edc9-7ae5-49e6-92b4-8694fe2ac43b",
      "metric_id": "financial.investment_income_ratio",
      "metric_name": "investment income ratio",
      "value": 1.9,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: investment_income_ratio",
        "source_page": null
      }
    },
    {
      "id": "0b1215aa-cd9f-44b7-a6ea-0047678308a6",
      "metric_id": "financial.gross_direct_premium.segment.workmens_compensation",
      "metric_name": "workmen's compensation segment premium",
      "value": 416,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0e0e6dd9-db1e-4cb8-8e7c-118b67cf8439",
      "metric_id": "financial.incurred_claim_ratio.segment.health",
      "metric_name": "health incurred claims ratio",
      "value": 96.9,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, health row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "14400037-a140-427a-9eb5-2a88cc9a8a4e",
      "metric_id": "financial.gross_direct_premium.segment.personal_accident",
      "metric_name": "personal accident segment premium",
      "value": 1830,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "156eb62d-3ca0-427c-8b0a-3d4027525777",
      "metric_id": "financial.incurred_claim_ratio.segment.engineering",
      "metric_name": "engineering incurred claims ratio",
      "value": 76.1,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, engineering row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "16c28d6c-2ec3-4ec6-ae3c-7b11beacfedb",
      "metric_id": "financial.gross_direct_premium.segment.engineering",
      "metric_name": "engineering segment premium",
      "value": 1923,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "1b579d88-ea34-4ed6-806d-c60a1d1ee46a",
      "metric_id": "financial.gross_direct_premium.segment.marine_hull",
      "metric_name": "marine hull segment premium",
      "value": 15,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "219d01f6-cbc2-428f-a294-0e647ed21c3c",
      "metric_id": "financial.investment_mix.segment.debentures_bonds",
      "metric_name": "debentures & bonds",
      "value": 319164,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2380203e-18d2-4c3e-874d-0ab1ce808c5c",
      "metric_id": "distribution.general.channel.corporate_agents_banks.policies",
      "metric_name": "Corporate Agents – Banks policies",
      "value": 11213,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "26bbf65f-8fd8-4488-a8c7-8d79082a9e66",
      "metric_id": "distribution.general.channel.corporate_agents_others.policies",
      "metric_name": "Corporate Agents – Others policies",
      "value": 39966,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2dc9b62d-d9a6-4657-89fc-269ced89a13c",
      "metric_id": "distribution.general.channel.common_service_centres.policies",
      "metric_name": "Common Service Centres (CSC) policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "321c0589-07e0-4727-87d4-e7b582b4a36e",
      "metric_id": "financial.expense_ratio.nonlife.nwp",
      "metric_name": "expense ratio",
      "value": 40,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: expense_nwp",
        "source_page": null
      }
    },
    {
      "id": "332553bc-41ff-492d-9ed6-77225609ecb1",
      "metric_id": "distribution.general.channel.direct_business_online.policies",
      "metric_name": "Direct Business – Online policies",
      "value": 8514,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "332ae648-c943-41bb-b910-677ba5018ab5",
      "metric_id": "financial.investment_mix.segment.infrastructure_housing",
      "metric_name": "infrastructure & housing",
      "value": 126035,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "35ac3137-872d-4616-8adf-8d862af72195",
      "metric_id": "distribution.general.channel.direct_business_online.premium",
      "metric_name": "Direct Business – Online premium",
      "value": 911,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "36441776-61c1-4612-a65e-3bb7f6516714",
      "metric_id": "financial.gross_direct_premium.segment.fire",
      "metric_name": "fire segment premium",
      "value": 6184,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "36ce309e-0f37-4fe5-8f98-60bd117f175d",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.policies",
      "metric_name": "Direct Business – Officers/Employees policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3873ecef-d687-4c5e-a572-568df7211fdc",
      "metric_id": "financial.gross_npa_ratio",
      "metric_name": "gross NPA ratio",
      "value": 0.03,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: gross_npa_ratio",
        "source_page": null
      }
    },
    {
      "id": "3db97615-dd14-45ed-abe8-7c079074e723",
      "metric_id": "financial.networth_growth_rate",
      "metric_name": "net worth growth rate",
      "value": 4.6,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: networth_growth_rate",
        "source_page": null
      }
    },
    {
      "id": "408a0956-5239-4e28-a700-906e809c9aae",
      "metric_id": "distribution.general.channel.brokers.policies",
      "metric_name": "Brokers policies",
      "value": 350908,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "463da92d-c08d-43bf-b698-066f72c594a4",
      "metric_id": "distribution.general.channel.pos_direct.premium",
      "metric_name": "Point of Sales Person (Direct) premium",
      "value": 18105,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "46ca07ff-bcbc-45eb-b8c1-82e42af3c99a",
      "metric_id": "financial.gross_direct_premium.segment.motor_od",
      "metric_name": "motor OD segment premium",
      "value": 23219,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "47d540ce-8c9e-4a56-8965-d6c1bb7996e6",
      "metric_id": "financial.earnings_per_share",
      "metric_name": "earnings per share",
      "value": 0.23,
      "unit": "INR",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: eps",
        "source_page": null
      }
    },
    {
      "id": "4961b66d-371a-4fd6-9d09-87999810f2ef",
      "metric_id": "financial.gross_direct_premium.segment.travel",
      "metric_name": "travel segment premium",
      "value": 31,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4a7a8536-e31a-49c2-9de6-ac09e9429b59",
      "metric_id": "financial.gross_direct_premium.segment.motor_tp",
      "metric_name": "motor TP segment premium",
      "value": 46498,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4b150b98-dd24-448c-befe-3af05d7a3297",
      "metric_id": "financial.combined_ratio.segment.motor_od",
      "metric_name": "motor od combined ratio",
      "value": 127.6,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, motor_od row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "4d6b192b-0396-4ae7-97dd-e0b70b6f55eb",
      "metric_id": "financial.gross_direct_premium.segment.health",
      "metric_name": "health segment premium",
      "value": 15993,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "523084df-d9e2-4de0-9817-2de48f4d628c",
      "metric_id": "financial.expense_ratio.nonlife.gdp",
      "metric_name": "expense ratio to gross premium",
      "value": 36,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: expense_gdp",
        "source_page": null
      }
    },
    {
      "id": "5409f705-b321-4a5e-a132-e9bfc4ddd878",
      "metric_id": "distribution.general.channel.misp_direct.policies",
      "metric_name": "MISP (Direct) policies",
      "value": 7676,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5954130e-4df7-4d2d-943c-49d394ea4d19",
      "metric_id": "financial.profit_before_tax",
      "metric_name": "profit before tax",
      "value": 13.77,
      "unit": "crore",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5b739dca-4fa0-4194-a241-f69f8cf9a4b6",
      "metric_id": "financial.profit_after_tax",
      "metric_name": "profit after tax",
      "value": 10.13,
      "unit": "crore",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5ce46ae5-1c2e-45e5-859f-87fd00e2f1e8",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.policies",
      "metric_name": "Insurance Marketing Firm policies",
      "value": 6097,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5f3233d5-99e5-451b-a2c0-67dfd97e915f",
      "metric_id": "distribution.general.channel.misp_direct.premium",
      "metric_name": "MISP (Direct) premium",
      "value": 235,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6a734482-a032-4787-adac-40c360af57dd",
      "metric_id": "distribution.general.channel.pos_direct.policies",
      "metric_name": "Point of Sales Person (Direct) policies",
      "value": 122323,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6b28f461-05ca-4121-a5c2-2a8419520da6",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.premium",
      "metric_name": "Direct Business – Officers/Employees premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6daf875d-cc62-41bc-93fa-4945ce898e57",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_tp",
      "metric_name": "motor tp incurred claims ratio",
      "value": 71,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, motor_tp row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "6f1d3ac3-e52f-4739-9821-3a2896fc394a",
      "metric_id": "financial.investment_mix.segment.equity_preference_shares",
      "metric_name": "equity & preference shares",
      "value": 67979,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7671ffea-96f2-4dd7-971e-4cbc7bedf325",
      "metric_id": "distribution.general.channel.individual_agents.policies",
      "metric_name": "Individual Agents policies",
      "value": 73671,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "78983194-05bc-4a2a-80c4-d8fd6144b783",
      "metric_id": "financial.combined_ratio.segment.motor_tp",
      "metric_name": "motor tp combined ratio",
      "value": 110.2,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, motor_tp row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "7e11db9f-1901-42f8-8abf-656d2c73383b",
      "metric_id": "financial.investment_exposure.central_govt_securities_pct",
      "metric_name": "central govt. securities",
      "value": 26.36,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7f215242-6c71-434d-a343-3c981660733a",
      "metric_id": "financial.gross_direct_premium.segment.liability",
      "metric_name": "liability segment premium",
      "value": 238,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "82a9cf0b-97b0-4192-b816-8db5abc0d37c",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.premium",
      "metric_name": "Insurance Marketing Firm premium",
      "value": 172,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8455aa0e-d513-48b5-9045-96f0a32ca887",
      "metric_id": "financial.combined_ratio.segment.engineering",
      "metric_name": "engineering combined ratio",
      "value": 128.4,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, engineering row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "85018be0-9324-453f-82a5-4adf3984e640",
      "metric_id": "financial.net_npa_ratio",
      "metric_name": "net NPA ratio",
      "value": 0,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: net_npa_ratio",
        "source_page": null
      }
    },
    {
      "id": "89ffacf6-4291-4e91-ba4b-ffde22add324",
      "metric_id": "financial.combined_ratio",
      "metric_name": "combined ratio",
      "value": 118.8,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: combined_ratio",
        "source_page": null
      }
    },
    {
      "id": "8a45d254-88f8-4cfb-bb42-c5a69087f0af",
      "metric_id": "distribution.general.channel.common_service_centres.premium",
      "metric_name": "Common Service Centres (CSC) premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8af56f2a-e416-4f05-bb51-7b4f3d2cd236",
      "metric_id": "financial.gdp_growth_rate",
      "metric_name": "gross direct premium growth rate",
      "value": 9.8,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: gdp_growth_rate",
        "source_page": null
      }
    },
    {
      "id": "8b9fb166-4b13-46a0-b477-312821b028c1",
      "metric_id": "distribution.general.channel.web_aggregators.policies",
      "metric_name": "Web Aggregators policies",
      "value": 43790,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8c56a7a4-9806-4864-826a-f35a036e0bf4",
      "metric_id": "financial.investment_npa.gross_amount",
      "metric_name": "gross npa (amount)",
      "value": 570.87,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8e5e7d5f-4f7f-4514-ac42-41f02a828553",
      "metric_id": "financial.incurred_claim_ratio.segment.travel",
      "metric_name": "travel incurred claims ratio",
      "value": 17.7,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, travel row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "8eb18f53-2ac2-4081-b2cb-3703848e287b",
      "metric_id": "distribution.general.channel.brokers.premium",
      "metric_name": "Brokers premium",
      "value": 54232,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "977bcf73-c2b8-47da-a5f5-be0cd440bb51",
      "metric_id": "financial.gdp_to_networth_ratio",
      "metric_name": "gross direct premium to net worth ratio",
      "value": 54,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: gdp_to_networth_ratio",
        "source_page": null
      }
    },
    {
      "id": "9ab92595-33ff-4bc1-b942-0df563c7522f",
      "metric_id": "financial.incurred_claim_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation incurred claims ratio",
      "value": 97,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, workmens_compensation row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "9ade9113-9555-45ac-96c6-b8a9e5b6ed9a",
      "metric_id": "distribution.general.channel.micro_agents.premium",
      "metric_name": "Micro Agents premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9ba60ac7-92a2-46eb-a190-f844ff0f3d9c",
      "metric_id": "financial.underwriting_balance_ratio",
      "metric_name": "underwriting balance ratio",
      "value": -19,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: underwriting_balance",
        "source_page": null
      }
    },
    {
      "id": "a1aed5ad-6923-43b4-9085-ae8956db1721",
      "metric_id": "financial.debt_equity_ratio",
      "metric_name": "debt to equity ratio",
      "value": 0.07,
      "unit": "ratio",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: debt_equity_ratio",
        "source_page": null
      }
    },
    {
      "id": "a32c924e-1ee9-4afb-b621-87162bbb66ed",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_od",
      "metric_name": "motor od incurred claims ratio",
      "value": 82.6,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, motor_od row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "abefc860-5eb5-4411-9829-dab4c89b92bb",
      "metric_id": "financial.combined_ratio.segment.liability",
      "metric_name": "liability combined ratio",
      "value": 54,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, liability row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "ad4421ef-a4aa-44a4-8aaf-5af1dfc7fbc1",
      "metric_id": "distribution.general.channel.individual_agents.premium",
      "metric_name": "Individual Agents premium",
      "value": 10319,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b188755e-bd06-4858-ba5e-4b63d242443f",
      "metric_id": "distribution.general.channel.corporate_agents_others.premium",
      "metric_name": "Corporate Agents – Others premium",
      "value": 5372,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b262221e-669e-45e8-89a9-9635582055ce",
      "metric_id": "financial.incurred_claim_ratio.segment.personal_accident",
      "metric_name": "personal accident incurred claims ratio",
      "value": 77.8,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, personal_accident row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "b28098f5-0d8a-4add-aae9-72169b3623c7",
      "metric_id": "financial.combined_ratio.segment.marine_cargo",
      "metric_name": "marine cargo combined ratio",
      "value": 165.9,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, marine_cargo row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "b5b646fd-f7ab-4508-a326-ebfdf563183c",
      "metric_id": "distribution.general.channel.micro_agents.policies",
      "metric_name": "Micro Agents policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b6e51e2f-d7a6-4fa5-afa3-deba4de3dc76",
      "metric_id": "financial.investment_exposure.govt_and_approved_securities_pct",
      "metric_name": "govt + approved securities",
      "value": 36.87,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b88497b7-e775-4e2f-ac42-f325a50e6016",
      "metric_id": "financial.operating_profit_ratio",
      "metric_name": "operating profit ratio",
      "value": -0.4,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: operating_profit_ratio",
        "source_page": null
      }
    },
    {
      "id": "b8c0f5b6-76a2-4cbe-a242-53be18e9c624",
      "metric_id": "financial.required_solvency_margin",
      "metric_name": "required solvency margin",
      "value": 89210,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 RSM regex",
        "source_page": null
      }
    },
    {
      "id": "b97cddd0-3a3b-42fb-ba32-92766431fbfa",
      "metric_id": "distribution.general.channel.corporate_agents_banks.premium",
      "metric_name": "Corporate Agents – Banks premium",
      "value": 1499,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b98e959b-76e2-4edc-83dc-3ff8f4a7a6dd",
      "metric_id": "financial.gross_direct_premium.segment.marine_cargo",
      "metric_name": "marine cargo segment premium",
      "value": 1788,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ba7f0e91-09fd-4274-bdd4-2ec8a47f2f94",
      "metric_id": "financial.combined_ratio.segment.health",
      "metric_name": "health combined ratio",
      "value": 115.7,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, health row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "bc6af7dc-2d5c-46b1-83aa-70f675533821",
      "metric_id": "financial.investment_mix.segment.government_securities",
      "metric_name": "government securities",
      "value": 347715,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c00a6758-2875-4e48-afcd-acc020a3b62b",
      "metric_id": "financial.combined_ratio.segment.travel",
      "metric_name": "travel combined ratio",
      "value": 66.2,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, travel row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "c3a9009d-3c7b-45bf-a05f-6cedbcbc8955",
      "metric_id": "financial.net_retention_ratio",
      "metric_name": "net retention ratio",
      "value": 83.9,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: net_retention",
        "source_page": null
      }
    },
    {
      "id": "c7e9e3f9-05c8-4518-b81d-021ac57b5e92",
      "metric_id": "distribution.general.channel.direct_business_others.premium",
      "metric_name": "Direct Business – Others premium",
      "value": 2446,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c8432e64-3b6e-4507-8b2c-3e5c47f7a603",
      "metric_id": "financial.investment_npa.provision_pct",
      "metric_name": "npa provision coverage",
      "value": 84.84,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d079c7b5-81cb-41ae-94f3-ac886c894c11",
      "metric_id": "financial.net_commission_ratio",
      "metric_name": "net commission ratio",
      "value": 26.9,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: net_commission_ratio",
        "source_page": null
      }
    },
    {
      "id": "d4ea5829-f48d-4766-8ff5-e3cbf7a9cf99",
      "metric_id": "distribution.general.channel.web_aggregators.premium",
      "metric_name": "Web Aggregators premium",
      "value": 5134,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d5b111e6-f2fd-4f1c-b8b4-b338ede03ed1",
      "metric_id": "financial.net_earning_ratio",
      "metric_name": "net earning ratio",
      "value": 1.2,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: net_earning_ratio",
        "source_page": null
      }
    },
    {
      "id": "dc500fc1-b67b-4514-ad0f-c40b476c9573",
      "metric_id": "financial.incurred_claim_ratio.segment.marine_cargo",
      "metric_name": "marine cargo incurred claims ratio",
      "value": 122.2,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, marine_cargo row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "e1beaacd-03bf-4250-94ad-bdabfb126cf5",
      "metric_id": "distribution.general.channel.direct_business_others.policies",
      "metric_name": "Direct Business – Others policies",
      "value": 34729,
      "unit": "count",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx minus H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e6bcd799-5ac9-4092-a628-8da03fdca140",
      "metric_id": "financial.investment_exposure.housing_infra_pct",
      "metric_name": "housing & infrastructure",
      "value": 26.71,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e9eb1d20-b902-4989-a6d8-db10a3a53c92",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 78.8,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 row-format label match: icr",
        "source_page": null
      }
    },
    {
      "id": "eb024b6b-09a5-4563-9779-db79f1118a20",
      "metric_id": "financial.available_solvency_margin",
      "metric_name": "available solvency margin",
      "value": 193394,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 ASM regex",
        "source_page": null
      }
    },
    {
      "id": "ee147d52-d189-4de6-86ce-59f154e5e40c",
      "metric_id": "financial.combined_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation combined ratio",
      "value": 139.3,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, workmens_compensation row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "f640ab77-36b3-44a5-99b9-5938f5c99ecd",
      "metric_id": "financial.combined_ratio.segment.personal_accident",
      "metric_name": "personal accident combined ratio",
      "value": 118.8,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, personal_accident row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "f8256406-ce32-474f-abac-dbaf8b5066d5",
      "metric_id": "financial.investment_mix.segment.other_investments",
      "metric_name": "other investments",
      "value": 93613,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q3 FY25-26",
        "source_document": "textplor-vendor-2025-26-9M.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f8ab36a3-2308-4851-b550-7a7ddd3fe836",
      "metric_id": "financial.combined_ratio.segment.fire",
      "metric_name": "fire combined ratio",
      "value": 149.4,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, fire row immediately after label, col 8",
        "source_page": null
      }
    },
    {
      "id": "f954d4b0-89d9-4f93-b834-68354a84c6ed",
      "metric_id": "financial.incurred_claim_ratio.segment.liability",
      "metric_name": "liability incurred claims ratio",
      "value": 18,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, liability row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "f978e4c3-8d30-4d6b-ab1e-6b198506744b",
      "metric_id": "financial.incurred_claim_ratio.segment.fire",
      "metric_name": "fire incurred claims ratio",
      "value": 71.1,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL20_Q3_FY25-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-28",
        "extraction_note": "NL-20 segmental table, fire row immediately after label, col 6",
        "source_page": null
      }
    },
    {
      "id": "03c3c1fe-6690-476a-9a68-bdb259737df5",
      "metric_id": "distribution.general.channel.corporate_agents_others.premium",
      "metric_name": "Corporate Agents – Others premium",
      "value": 4681,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0532756a-aba1-4326-a05e-27f1763218c7",
      "metric_id": "financial.investment_mix.segment.equity_preference_shares",
      "metric_name": "equity & preference shares",
      "value": 60371,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0d945fa9-506c-4f86-acdc-5c406ccd549d",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.policies",
      "metric_name": "Insurance Marketing Firm policies",
      "value": 20283,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "140520e1-0c8f-4dbf-b26e-c42145f50c29",
      "metric_id": "financial.gross_direct_premium.segment.marine_hull",
      "metric_name": "marine hull segment premium",
      "value": 5,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "1807fab4-8ed0-45a3-a663-a2112f1b97e6",
      "metric_id": "distribution.general.channel.direct_business_others.premium",
      "metric_name": "Direct Business – Others premium",
      "value": 7224,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "1d08a52a-11c0-4e1f-96df-56e47dd02ede",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.premium",
      "metric_name": "Insurance Marketing Firm premium",
      "value": 343,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "305cef78-0a0e-49df-9510-49f5a8ea9381",
      "metric_id": "financial.investment_mix.segment.infrastructure_housing",
      "metric_name": "infrastructure & housing",
      "value": 123535,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "31248cd0-7688-49ad-afe5-56d42e787071",
      "metric_id": "distribution.general.channel.web_aggregators.policies",
      "metric_name": "Web Aggregators policies",
      "value": 39991,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "32cf2e70-2fc2-4a6b-abae-8a9303d17944",
      "metric_id": "financial.gross_direct_premium.segment.fire",
      "metric_name": "fire segment premium",
      "value": 7283,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "427d1d1a-73bd-4014-8400-2b251cb09ca4",
      "metric_id": "distribution.general.channel.misp_direct.policies",
      "metric_name": "MISP (Direct) policies",
      "value": 10348,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "478fab39-1c92-4e44-9a97-5f8075d0d5d0",
      "metric_id": "financial.gross_direct_premium.segment.motor_tp",
      "metric_name": "motor TP segment premium",
      "value": 47463,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4fe0c961-5685-4d0e-8528-0e405b65f134",
      "metric_id": "distribution.general.channel.brokers.policies",
      "metric_name": "Brokers policies",
      "value": 330293,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4fffbfa0-ba5f-4229-84e2-66f5713924ee",
      "metric_id": "distribution.general.channel.individual_agents.policies",
      "metric_name": "Individual Agents policies",
      "value": 78010,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "50bb370b-2ea4-4b03-a30f-fffd437560f4",
      "metric_id": "distribution.general.channel.misp_direct.premium",
      "metric_name": "MISP (Direct) premium",
      "value": 262,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "59561b15-e387-4628-8c6e-bc52e3be1e81",
      "metric_id": "financial.gross_direct_premium.segment.travel",
      "metric_name": "travel segment premium",
      "value": 44,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6651ea90-2b6d-4db9-9c9a-c1fae1af871e",
      "metric_id": "financial.investment_exposure.housing_infra_pct",
      "metric_name": "housing & infrastructure",
      "value": 26.32,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6b765370-fd06-4b74-bdc6-8815befb973a",
      "metric_id": "financial.gross_direct_premium.segment.workmens_compensation",
      "metric_name": "workmen's compensation segment premium",
      "value": 432,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7314df3a-ff05-4e31-8000-c77eb127d695",
      "metric_id": "distribution.general.channel.brokers.premium",
      "metric_name": "Brokers premium",
      "value": 57628,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "75ab6c11-848c-45b0-b8d9-ee477af031f4",
      "metric_id": "distribution.general.channel.pos_direct.premium",
      "metric_name": "Point of Sales Person (Direct) premium",
      "value": 19614,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "761ccbde-bf42-4363-b487-76c3a3cb7109",
      "metric_id": "distribution.general.channel.pos_direct.policies",
      "metric_name": "Point of Sales Person (Direct) policies",
      "value": 130919,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "80398930-5cb5-4552-92a8-d2f4b6794e36",
      "metric_id": "distribution.general.channel.corporate_agents_banks.premium",
      "metric_name": "Corporate Agents – Banks premium",
      "value": 1352,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "87859b73-473e-421a-9c8f-95a7128763b5",
      "metric_id": "financial.profit_before_tax",
      "metric_name": "profit before tax",
      "value": 14.6,
      "unit": "crore",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "91f4500e-f6a8-47f5-b6c5-53a4814fc4e8",
      "metric_id": "financial.profit_after_tax",
      "metric_name": "profit after tax",
      "value": 10.69,
      "unit": "crore",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9249a405-f895-40e5-a181-e11651628a67",
      "metric_id": "distribution.general.channel.corporate_agents_banks.policies",
      "metric_name": "Corporate Agents – Banks policies",
      "value": 8335,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9bc2fb2e-d1a8-4a85-b901-a00d4f218240",
      "metric_id": "financial.gross_direct_premium.segment.engineering",
      "metric_name": "engineering segment premium",
      "value": 2020,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9c3647a3-2c2c-42cf-95f3-aecd2601f6f5",
      "metric_id": "distribution.general.channel.micro_agents.premium",
      "metric_name": "Micro Agents premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9d85600c-ed83-4bff-8dbf-7e08d9cce632",
      "metric_id": "financial.investment_npa.provision_pct",
      "metric_name": "npa provision coverage",
      "value": 76.39,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9dc2667f-e649-4352-b65a-62b5561115f0",
      "metric_id": "financial.gross_direct_premium.segment.liability",
      "metric_name": "liability segment premium",
      "value": 376,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a17e5947-1057-465f-80f6-a07c52d2a591",
      "metric_id": "distribution.general.channel.corporate_agents_others.policies",
      "metric_name": "Corporate Agents – Others policies",
      "value": 25808,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a608bb8d-d2fd-4d56-a4c0-611a6f764df0",
      "metric_id": "financial.investment_mix.segment.other_investments",
      "metric_name": "other investments",
      "value": 86905,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b03872bb-9612-4488-8b64-4fc2a3df13cf",
      "metric_id": "financial.gross_direct_premium.segment.personal_accident",
      "metric_name": "personal accident segment premium",
      "value": 1810,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b1749f37-3d7d-4dd0-b6bd-106354f8887e",
      "metric_id": "financial.investment_npa.gross_amount",
      "metric_name": "gross npa (amount)",
      "value": 298.88,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b39fe849-c31e-4a58-87fa-8d796d94e092",
      "metric_id": "distribution.general.channel.direct_business_others.policies",
      "metric_name": "Direct Business – Others policies",
      "value": 92107,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b3cf4f6a-6045-4df2-8c36-01a916960899",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.policies",
      "metric_name": "Direct Business – Officers/Employees policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "bdedbcc6-e01a-4f3f-9e46-cca23614afe5",
      "metric_id": "financial.investment_exposure.govt_and_approved_securities_pct",
      "metric_name": "govt + approved securities",
      "value": 37.89,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "bfa255f8-7060-4d46-a487-0c8528014a07",
      "metric_id": "distribution.general.channel.common_service_centres.premium",
      "metric_name": "Common Service Centres (CSC) premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c113d3ef-d0c2-4c23-933a-40b6cd5648f0",
      "metric_id": "financial.investment_mix.segment.government_securities",
      "metric_name": "government securities",
      "value": 349382,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c2f9975b-7acc-40f1-83a7-52538c66b036",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.premium",
      "metric_name": "Direct Business – Officers/Employees premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c4a32438-17b7-4868-b748-90d4c88a5a66",
      "metric_id": "distribution.general.channel.direct_business_online.premium",
      "metric_name": "Direct Business – Online premium",
      "value": 942,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c9a47eea-a83c-4e37-9dfe-fa843298bb51",
      "metric_id": "distribution.general.channel.direct_business_online.policies",
      "metric_name": "Direct Business – Online policies",
      "value": 9326,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ca0a2295-3b5c-4c34-94d9-29889cd7fcac",
      "metric_id": "financial.gross_direct_premium.segment.marine_cargo",
      "metric_name": "marine cargo segment premium",
      "value": 1733,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d01bc814-76e0-4cef-b034-96c83c2f7b7b",
      "metric_id": "distribution.general.channel.common_service_centres.policies",
      "metric_name": "Common Service Centres (CSC) policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "da4a7d54-49a8-4755-88d2-030265d0a3fb",
      "metric_id": "distribution.general.channel.individual_agents.premium",
      "metric_name": "Individual Agents premium",
      "value": 11115,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e59c1809-43d3-430b-9497-6c3a2455551a",
      "metric_id": "financial.investment_npa.gross_pct",
      "metric_name": "gross npa ratio",
      "value": 0.03,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e6e142e5-78a0-4233-933f-356c4a815e82",
      "metric_id": "financial.gross_direct_premium.segment.health",
      "metric_name": "health segment premium",
      "value": 19761,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "eee16877-d5b0-46a0-97b4-d09cb6a6d730",
      "metric_id": "financial.investment_exposure.central_govt_securities_pct",
      "metric_name": "central govt. securities",
      "value": 27.14,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f843f367-1df4-4fa3-b259-75305e137336",
      "metric_id": "financial.gross_direct_premium.segment.motor_od",
      "metric_name": "motor OD segment premium",
      "value": 21819,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f92de1c7-6dbc-41c9-b1dc-62c99b676307",
      "metric_id": "financial.investment_mix.segment.debentures_bonds",
      "metric_name": "debentures & bonds",
      "value": 309275,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "fa1be2d0-9f6b-4244-96dd-222ed0b29f3c",
      "metric_id": "distribution.general.channel.micro_agents.policies",
      "metric_name": "Micro Agents policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ff53957e-5f49-40d2-b05e-55927aebe720",
      "metric_id": "distribution.general.channel.web_aggregators.premium",
      "metric_name": "Web Aggregators premium",
      "value": 4655,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "textplor-vendor-2025-26-H1.xlsx minus Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "004d329a-7d8f-41a6-ae9c-63c06bdebeea",
      "metric_id": "distribution.general.channel.misp_direct.policies",
      "metric_name": "MISP (Direct) policies",
      "value": 9920,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "02c3989d-af1d-4a82-8ca3-96e6887e0faf",
      "metric_id": "distribution.general.channel.pos_direct.premium",
      "metric_name": "Point of Sales Person (Direct) premium",
      "value": 13810,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "057351c2-5006-420e-8105-78a4a0b81f73",
      "metric_id": "financial.required_solvency_margin",
      "metric_name": "required solvency margin",
      "value": 86190,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q1 FY25-26",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 RSM regex",
        "source_page": null
      }
    },
    {
      "id": "09530f25-0c8d-4042-bc4e-2d049567a51c",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.policies",
      "metric_name": "Insurance Marketing Firm policies",
      "value": 13098,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0d46820c-40e0-4871-a9b6-81678394a9dc",
      "metric_id": "financial.combined_ratio.segment.travel",
      "metric_name": "travel combined ratio",
      "value": 65,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "0f6ba61b-b033-4713-8171-9c1d49004e6a",
      "metric_id": "financial.incurred_claim_ratio.segment.marine_cargo",
      "metric_name": "marine cargo incurred claims ratio",
      "value": 109,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "1333294c-43a3-4f8f-99e4-de66caf6f29b",
      "metric_id": "financial.investment_exposure.housing_infra_pct",
      "metric_name": "housing & infrastructure",
      "value": 24.26,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "14d36d51-6468-4468-bd5e-652fa7085f7e",
      "metric_id": "financial.operating_profit_ratio",
      "metric_name": "operating profit ratio",
      "value": 9,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2107b350-10da-4b38-8355-e692aff9f211",
      "metric_id": "financial.investment_yield.gross.quarterly",
      "metric_name": "gross yield (quarterly)",
      "value": 2.61,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-31-INVESTMENT-INCOME",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "294b671f-594b-412b-a8b2-1be1744d12c6",
      "metric_id": "financial.expense_ratio.nonlife.gdp",
      "metric_name": "expense ratio to gross premium",
      "value": 28,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2a6646b5-eb5c-41d1-ad7c-131528d3620c",
      "metric_id": "financial.claims_paid_to_provisioned_ratio",
      "metric_name": "claims paid to provisioned ratio",
      "value": 10.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2c2b25ef-7ea0-4ae4-bf51-28cb32dc73ab",
      "metric_id": "financial.incurred_claim_ratio.segment.engineering",
      "metric_name": "engineering incurred claims ratio",
      "value": 79,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2e309a8e-d1b0-47da-937c-d42def2f3633",
      "metric_id": "financial.expense_ratio.nonlife.nwp",
      "metric_name": "expense ratio",
      "value": 29.6,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2ea53d55-597d-4a6b-8950-f76e51d591c6",
      "metric_id": "distribution.general.channel.corporate_agents_banks.policies",
      "metric_name": "Corporate Agents – Banks policies",
      "value": 7772,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "2f354284-3efc-4b95-9fda-da3fb8af7e97",
      "metric_id": "financial.investment_exposure.central_govt_securities_pct",
      "metric_name": "central govt. securities",
      "value": 30.84,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "300fc4e4-3157-44a8-94ca-65166d6583b6",
      "metric_id": "distribution.general.channel.insurance_marketing_firm.premium",
      "metric_name": "Insurance Marketing Firm premium",
      "value": 294,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "32e82016-f309-42da-8ba7-08ce9a326df8",
      "metric_id": "distribution.general.channel.common_service_centres.premium",
      "metric_name": "Common Service Centres (CSC) premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3bd3884c-1023-40b3-b21d-66ded492789f",
      "metric_id": "distribution.general.channel.micro_agents.premium",
      "metric_name": "Micro Agents premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "3d13a0d6-575b-418e-9587-b9056aebb4bb",
      "metric_id": "financial.underwriting_balance_ratio",
      "metric_name": "underwriting balance ratio",
      "value": -13,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4121b0f9-5cf2-4400-af08-6d012514fc20",
      "metric_id": "financial.profit_after_tax",
      "metric_name": "profit after tax",
      "value": 89.57,
      "unit": "crore",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "475d37ae-ba18-48e4-9781-ded6201925c8",
      "metric_id": "financial.gross_direct_premium.segment.fire",
      "metric_name": "fire segment premium",
      "value": 16319,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "49d2adf9-db41-483e-afff-9d9c7f7d350a",
      "metric_id": "financial.incurred_claim_ratio.segment.personal_accident",
      "metric_name": "personal accident incurred claims ratio",
      "value": 72,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "4ab92b7b-5f22-4603-8b26-0eb1080ca01c",
      "metric_id": "distribution.general.channel.brokers.policies",
      "metric_name": "Brokers policies",
      "value": 289582,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "509107ac-bc9c-4c37-87c3-6d5961808ab6",
      "metric_id": "financial.gross_direct_premium.segment.marine_cargo",
      "metric_name": "marine cargo segment premium",
      "value": 2277,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "510b3eba-86e9-400a-b16e-5a222cd5b97e",
      "metric_id": "distribution.general.channel.web_aggregators.policies",
      "metric_name": "Web Aggregators policies",
      "value": 38184,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "58321a24-7d33-4176-8988-311bf0af0d5d",
      "metric_id": "financial.investment_income_ratio",
      "metric_name": "investment income ratio",
      "value": 2.6,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5b86ad21-70df-4749-96db-d6615b82a426",
      "metric_id": "financial.investment_mix.segment.infrastructure_housing",
      "metric_name": "infrastructure & housing",
      "value": 116537,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5e93e6b5-f40a-4ffe-bb0b-557133c89e5e",
      "metric_id": "financial.combined_ratio.segment.personal_accident",
      "metric_name": "personal accident combined ratio",
      "value": 92,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "5f522ebf-3ecb-417e-b078-b93234eda95a",
      "metric_id": "financial.incurred_claim_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation incurred claims ratio",
      "value": 93,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "618c50bb-b2f3-4b29-b829-e4c1f77b7ede",
      "metric_id": "financial.investment_yield.net.quarterly",
      "metric_name": "net yield (quarterly)",
      "value": 2.61,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-31-INVESTMENT-INCOME",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "647f5817-20a2-48dc-961e-8d992b723025",
      "metric_id": "distribution.general.channel.pos_direct.policies",
      "metric_name": "Point of Sales Person (Direct) policies",
      "value": 93637,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "67727734-6589-4d38-a7ed-fd03b4548458",
      "metric_id": "financial.combined_ratio.segment.fire",
      "metric_name": "fire combined ratio",
      "value": 115,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6aa12bf6-e6a8-4b9f-a3b5-64f2d86690c7",
      "metric_id": "financial.investment_mix.segment.equity_preference_shares",
      "metric_name": "equity & preference shares",
      "value": 46711,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "6f5016fa-49e9-4a85-9792-72ea7776526e",
      "metric_id": "financial.gdp_growth_rate",
      "metric_name": "gross direct premium growth rate",
      "value": 15.5,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7040b69c-f3ed-42e9-995b-51099eea00c9",
      "metric_id": "financial.investment_mix.segment.debentures_bonds",
      "metric_name": "debentures & bonds",
      "value": 296410,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "73a3a8b5-af13-4766-b45f-9fa7a8f984f6",
      "metric_id": "financial.combined_ratio.segment.workmens_compensation",
      "metric_name": "workmen's compensation combined ratio",
      "value": 133,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "73f1ab02-f0a7-4ebf-895d-2e04671604e2",
      "metric_id": "financial.incurred_claim_ratio.segment.marine_hull",
      "metric_name": "marine hull incurred claims ratio",
      "value": 0,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "750e3cd5-bb19-4649-bee3-fc5907c2f162",
      "metric_id": "financial.investment_npa.provision_pct",
      "metric_name": "npa provision coverage",
      "value": 74.28,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "7bf0c92b-ad3f-40fc-8ca1-25800d64c41d",
      "metric_id": "distribution.general.channel.corporate_agents_others.policies",
      "metric_name": "Corporate Agents – Others policies",
      "value": 16843,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "82f82d50-bcc1-40ad-860e-309b72b5e217",
      "metric_id": "distribution.general.channel.direct_business_online.premium",
      "metric_name": "Direct Business – Online premium",
      "value": 887,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "836f19b8-5ada-4ac5-bdfe-055641f45fe5",
      "metric_id": "financial.gross_direct_premium.segment.travel",
      "metric_name": "travel segment premium",
      "value": 62,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "87305ab9-32a2-48b1-bf40-25ebdc4b09d2",
      "metric_id": "financial.networth_growth_rate",
      "metric_name": "net worth growth rate",
      "value": 5.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "899270e8-fd7b-4cc6-9cda-a97e37ee1026",
      "metric_id": "financial.gross_direct_premium.segment.personal_accident",
      "metric_name": "personal accident segment premium",
      "value": 1886,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8b58852b-30d0-43dc-a253-15b57de958f4",
      "metric_id": "financial.combined_ratio.segment.motor_tp",
      "metric_name": "motor tp combined ratio",
      "value": 110,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8e2f46cc-e7dd-484f-8792-a5cb31fe4e22",
      "metric_id": "financial.gross_direct_premium.segment.liability",
      "metric_name": "liability segment premium",
      "value": 235,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "8ea081fd-579e-4c6f-9ab8-01b402e4d57a",
      "metric_id": "financial.gdp_to_networth_ratio",
      "metric_name": "gross direct premium to net worth ratio",
      "value": 63,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md. | Corrected 2026-10-26: unit-convention fix. IRDAI NL-20's 'Gross Direct Premium to Net Worth' row is filed industry-wide as a raw multiple (times), not a percentage -- confirmed against 7 insurers' own official PDFs (Reliance General, Cholamandalam MS, New India Assurance, Agriculture Insurance, National Insurance, Oriental Insurance all print the bare multiple, no % sign; only Generali Central's own form already prints a true percentage). Site declares this metric's unit as %, so multiplied by 100 to match.",
        "source_page": null
      }
    },
    {
      "id": "921c7ea6-77d8-47ea-8563-40c8459c16d2",
      "metric_id": "financial.combined_ratio",
      "metric_name": "combined ratio",
      "value": 110.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "993ed9d1-f24e-495d-ada5-ec6e7de027b7",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.policies",
      "metric_name": "Direct Business – Officers/Employees policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9c4bdb8d-bbf7-4c04-b506-7eeba5298d94",
      "metric_id": "financial.combined_ratio.segment.engineering",
      "metric_name": "engineering combined ratio",
      "value": 120,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "9d35b599-5f67-4269-aabc-0fdce4a5a9b7",
      "metric_id": "distribution.general.channel.common_service_centres.policies",
      "metric_name": "Common Service Centres (CSC) policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a09dea0e-6da6-4528-a575-4121026552a8",
      "metric_id": "financial.investment_mix.segment.other_investments",
      "metric_name": "other investments",
      "value": 85758,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a0df1696-268c-4482-b62a-b2be72bf0c04",
      "metric_id": "financial.net_retention_ratio",
      "metric_name": "net retention ratio",
      "value": 75.4,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a55cfb91-3375-4ee0-bc37-4c2780f5f774",
      "metric_id": "distribution.general.channel.corporate_agents_others.premium",
      "metric_name": "Corporate Agents – Others premium",
      "value": 4164,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "a64d2bfd-bcbe-4b33-91da-421f99b49c13",
      "metric_id": "financial.gross_direct_premium.segment.health",
      "metric_name": "health segment premium",
      "value": 34880,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "aaad2f20-28b6-4a26-a959-c74e7d50899a",
      "metric_id": "financial.combined_ratio.segment.marine_hull",
      "metric_name": "marine hull combined ratio",
      "value": 0,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ab2dc234-4f99-4759-a5b5-c404e1e8fe97",
      "metric_id": "distribution.general.channel.brokers.premium",
      "metric_name": "Brokers premium",
      "value": 77754,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ac0e0723-6a4b-4ffd-8d8b-6ab898547025",
      "metric_id": "financial.available_solvency_margin",
      "metric_name": "available solvency margin",
      "value": 190159,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q1 FY25-26",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 ASM regex",
        "source_page": null
      }
    },
    {
      "id": "af4a1445-9dd3-47d4-9ec9-cf0beb16c3b2",
      "metric_id": "financial.incurred_claim_ratio.segment.liability",
      "metric_name": "liability incurred claims ratio",
      "value": 27,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b118d6ba-da03-4826-bfa3-42ff94339c14",
      "metric_id": "financial.investment_npa.gross_amount",
      "metric_name": "gross npa (amount)",
      "value": 307.39,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-30-NON-PERFORMING-ASSETS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "b9e6c673-4a03-4f91-8903-08ffe00a9c75",
      "metric_id": "distribution.general.channel.individual_agents.policies",
      "metric_name": "Individual Agents policies",
      "value": 61472,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "bc8a7dc6-962d-45b2-a779-4dde6c73d575",
      "metric_id": "financial.combined_ratio.segment.motor_od",
      "metric_name": "motor od combined ratio",
      "value": 127,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c26580ca-698f-4a3e-af04-7155750f2a40",
      "metric_id": "financial.profit_before_tax",
      "metric_name": "profit before tax",
      "value": 119.84,
      "unit": "crore",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-2-B-PL",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c3469f24-1ebf-44ee-9ab3-b5701e49de32",
      "metric_id": "distribution.general.channel.misp_direct.premium",
      "metric_name": "MISP (Direct) premium",
      "value": 252,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "c8ddd7ac-1404-44ee-a215-43268269445c",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_od",
      "metric_name": "motor od incurred claims ratio",
      "value": 85,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d055bde9-8a3c-4ee0-ba77-f300281432cd",
      "metric_id": "financial.incurred_claim_ratio.segment.motor_tp",
      "metric_name": "motor tp incurred claims ratio",
      "value": 39,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d56ea669-4236-4d5f-8ca9-7f3e191d64c9",
      "metric_id": "financial.gross_direct_premium.segment.motor_tp",
      "metric_name": "motor TP segment premium",
      "value": 36423,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "d5d202be-81a6-47df-8c87-1452ca64d03a",
      "metric_id": "distribution.general.channel.corporate_agents_banks.premium",
      "metric_name": "Corporate Agents – Banks premium",
      "value": 1159,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "daf102b8-d1be-4862-a58f-a4ddcb6befd7",
      "metric_id": "distribution.general.channel.direct_business_online.policies",
      "metric_name": "Direct Business – Online policies",
      "value": 8482,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "db0b2263-c571-406c-88f1-25a02503e291",
      "metric_id": "financial.investment_mix.segment.government_securities",
      "metric_name": "government securities",
      "value": 382352,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-12-INVESTMENT-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "dbbeb0ec-aabd-4a00-8016-ed656b2b9ef6",
      "metric_id": "financial.incurred_claim_ratio.segment.health",
      "metric_name": "health incurred claims ratio",
      "value": 96,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "dd092e42-d33f-4c18-884c-59f4425ae854",
      "metric_id": "financial.combined_ratio.segment.marine_cargo",
      "metric_name": "marine cargo combined ratio",
      "value": 147,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "dd6e99f5-4dde-470e-b5d7-89030432595d",
      "metric_id": "distribution.general.channel.web_aggregators.premium",
      "metric_name": "Web Aggregators premium",
      "value": 3727,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "de4f7847-d2d6-4043-8387-4e985ccdf0c7",
      "metric_id": "financial.investment_exposure.govt_and_approved_securities_pct",
      "metric_name": "govt + approved securities",
      "value": 41.65,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-28B-EXPOSURE-NORMS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Seeds the new Investment Performance page -- first data this metric family has ever had. Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "de991737-026d-4f7c-af08-5d3cd6ef5504",
      "metric_id": "financial.technical_reserves_to_premium_ratio",
      "metric_name": "technical reserves to premium ratio",
      "value": 8.05,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ded6dc35-f2d4-43fe-af37-ce9c7a3f12bf",
      "metric_id": "distribution.general.channel.direct_business_officers_employees.premium",
      "metric_name": "Direct Business – Officers/Employees premium",
      "value": 0,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e082610d-9c98-4219-b5ad-e21446bca1da",
      "metric_id": "financial.net_commission_ratio",
      "metric_name": "net commission ratio",
      "value": 18.8,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e255b8d5-d27f-4b72-9a8f-ccc3bb44242a",
      "metric_id": "financial.combined_ratio.segment.health",
      "metric_name": "health combined ratio",
      "value": 107,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e3a7279b-7280-4372-9630-b17da52be37f",
      "metric_id": "financial.combined_ratio.segment.liability",
      "metric_name": "liability combined ratio",
      "value": 56,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e5b21ef3-e81d-4344-9c5e-df0e6acb817a",
      "metric_id": "financial.gross_direct_premium.segment.motor_od",
      "metric_name": "motor OD segment premium",
      "value": 20621,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e60a0ae5-f31c-40b8-a32a-da71caa32383",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.21,
      "unit": "x",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "automated-extraction",
        "regulatory_form": "NL-26-SOLVENCY-MARGIN",
        "reporting_period": "Q1 FY25-26",
        "source_document": "NL-26.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-27",
        "extraction_note": "NL-26 solvency ratio regex",
        "source_page": null
      }
    },
    {
      "id": "e8e88534-db27-4bcb-9bb6-0056ea9e2f46",
      "metric_id": "financial.incurred_claim_ratio.segment.travel",
      "metric_name": "travel incurred claims ratio",
      "value": 20,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "e9f0e81c-6e04-426d-b905-479076ff5269",
      "metric_id": "financial.gross_direct_premium.segment.workmens_compensation",
      "metric_name": "workmen's compensation segment premium",
      "value": 410,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "ec3a0c44-5ef8-481b-8ebd-09a14329e292",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 80.6,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f0b8716d-3d19-4828-b112-eea4a2fd8e5b",
      "metric_id": "financial.gross_direct_premium.segment.engineering",
      "metric_name": "engineering segment premium",
      "value": 2202,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-4-PREMIUM-SCHEDULE",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f2d35258-e441-45f7-a0d8-b7fcb7c0c751",
      "metric_id": "financial.incurred_claim_ratio.segment.fire",
      "metric_name": "fire incurred claims ratio",
      "value": 76,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f36cea4d-8c87-433c-9d6c-e1bbead79f40",
      "metric_id": "distribution.general.channel.individual_agents.premium",
      "metric_name": "Individual Agents premium",
      "value": 9469,
      "unit": "INR_lakhs",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "f5cd8949-073c-4d2f-a2fe-a74114e91081",
      "metric_id": "distribution.general.channel.micro_agents.policies",
      "metric_name": "Micro Agents policies",
      "value": 0,
      "unit": "count",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "royal-sundaram",
        "regulatory_form": "NL-36-BUSINESS-CHANNELS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "textplor-vendor-2025-26-Q1.xlsx",
        "source_url": null,
        "extracted_by": "EverythingInsurance Research (vendor-compiled dataset, textplor.com, offline 2026-10-26)",
        "last_verified": "2026-10-26",
        "extraction_note": "Vendor-aggregated dataset, not pulled directly from insurer's own public disclosure page. Gap-fill only (no existing value for this insurer/metric/period). Cross-check against insurer's own source queued separately -- see project-log/quarterly-update-runbook.md.",
        "source_page": null
      }
    },
    {
      "id": "240be477-670a-4d7e-b847-0eed9a1b5a4d",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 79.25,
      "unit": "%",
      "reporting_period_label": "FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-10",
        "reporting_period": "FY24-25",
        "source_document": "IRDAI Annual Report 2024-25",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 374
      }
    },
    {
      "id": "6479a887-5ca8-4e7e-a605-157f29307595",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.2,
      "unit": "x",
      "reporting_period_label": "Q4 FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Table-49",
        "reporting_period": "Q4 FY24-25",
        "source_document": "IRDAI Handbook Table 49",
        "source_url": null,
        "extracted_by": "push_irdai_solvency.py v1",
        "last_verified": "2026-09-19",
        "extraction_note": "Statement 12 — IRDAI Annual Report 2024-25 (hardcoded from Table)",
        "source_page": null
      }
    },
    {
      "id": "8907caba-dab2-490b-a9d8-f10fb7e9adca",
      "metric_id": "financial.gross_written_premium",
      "metric_name": "gross written premium",
      "value": 3763.18,
      "unit": "crore",
      "reporting_period_label": "FY25-03",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-2-40",
        "reporting_period": "FY25-03",
        "source_document": "IRDAI Handbook Table 40",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "a5af8737-b8bf-4c96-a6b4-3c20e3eb7924",
      "metric_id": "claims.repudiation_ratio.nonlife.count",
      "metric_name": "claims repudiation ratio",
      "value": 5.0325,
      "unit": "%",
      "reporting_period_label": "FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY24-25",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "ff68b182-2e35-4285-8289-642da8cdd647",
      "metric_id": "claims.settlement_ratio.nonlife.count",
      "metric_name": "claim settlement ratio",
      "value": 82.14,
      "unit": "%",
      "reporting_period_label": "FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY24-25",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "02456af4-4ce3-4500-b0e9-9c07438b8b89",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.26,
      "unit": "x",
      "reporting_period_label": "Q3 FY24-25",
      "reporting_period_end": "2024-12-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q3 FY24-25",
        "source_document": "IRDAI Annual Report 2024-25",
        "source_url": null,
        "extracted_by": "push_irdai_solvency.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "Statement 12 — IRDAI Annual Report 2024-25 (hardcoded from Table)",
        "source_page": 376
      }
    },
    {
      "id": "58d962f5-7db1-4710-af4b-520fc2468257",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.35,
      "unit": "x",
      "reporting_period_label": "Q2 FY24-25",
      "reporting_period_end": "2024-09-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q2 FY24-25",
        "source_document": "IRDAI Annual Report 2024-25",
        "source_url": null,
        "extracted_by": "push_irdai_solvency.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "Statement 12 — IRDAI Annual Report 2024-25 (hardcoded from Table)",
        "source_page": 376
      }
    },
    {
      "id": "b22e344e-2988-476c-ba03-deaf633ba231",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.38,
      "unit": "x",
      "reporting_period_label": "Q1 FY24-25",
      "reporting_period_end": "2024-06-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q1 FY24-25",
        "source_document": "IRDAI Annual Report 2024-25",
        "source_url": null,
        "extracted_by": "push_irdai_solvency.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "Statement 12 — IRDAI Annual Report 2024-25 (hardcoded from Table)",
        "source_page": 376
      }
    },
    {
      "id": "47683bb9-af58-4d12-aa6c-f9eb08fa4c34",
      "metric_id": "claims.settlement_ratio.nonlife.count",
      "metric_name": "claim settlement ratio",
      "value": 84.9001,
      "unit": "%",
      "reporting_period_label": "FY23-24",
      "reporting_period_end": "2024-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY23-24",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "6e502fdf-d381-43aa-9c99-2c5a873a3f3d",
      "metric_id": "claims.repudiation_ratio.nonlife.count",
      "metric_name": "claims repudiation ratio",
      "value": 1.987,
      "unit": "%",
      "reporting_period_label": "FY23-24",
      "reporting_period_end": "2024-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY23-24",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "8e5315e4-3c0e-423f-83ed-77824ef16cba",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.42,
      "unit": "x",
      "reporting_period_label": "Q4 FY23-24",
      "reporting_period_end": "2024-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Table-49",
        "reporting_period": "Q4 FY23-24",
        "source_document": "IRDAI Handbook Table 49",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "e52b320d-0325-4b98-a6bc-342491f265ad",
      "metric_id": "financial.gross_written_premium",
      "metric_name": "gross written premium",
      "value": 3637.1,
      "unit": "crore",
      "reporting_period_label": "FY24-03",
      "reporting_period_end": "2024-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-2-40",
        "reporting_period": "FY24-03",
        "source_document": "IRDAI Handbook Table 40",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "fd3df06a-27f8-485b-ac79-e067fac5febc",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 77.62,
      "unit": "%",
      "reporting_period_label": "FY23-24",
      "reporting_period_end": "2024-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-10",
        "reporting_period": "FY23-24",
        "source_document": "IRDAI Annual Report 2024-25",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 374
      }
    },
    {
      "id": "063370bb-6713-4fce-b5b2-63f3644fd7fa",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.54,
      "unit": "x",
      "reporting_period_label": "Q3 FY23-24",
      "reporting_period_end": "2023-12-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q3 FY23-24",
        "source_document": "IRDAI Annual Report 2023-24",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 357
      }
    },
    {
      "id": "3174ce54-faa5-4346-9a3b-28824c281e78",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.62,
      "unit": "x",
      "reporting_period_label": "Q2 FY23-24",
      "reporting_period_end": "2023-09-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q2 FY23-24",
        "source_document": "IRDAI Annual Report 2023-24",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 357
      }
    },
    {
      "id": "17016cc2-c8e3-4923-9c80-634cfe47f343",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.62,
      "unit": "x",
      "reporting_period_label": "Q1 FY23-24",
      "reporting_period_end": "2023-06-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q1 FY23-24",
        "source_document": "IRDAI Annual Report 2023-24",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 357
      }
    },
    {
      "id": "34156dca-0f17-4fc7-92d3-83c1e23ff7c2",
      "metric_id": "claims.repudiation_ratio.nonlife.count",
      "metric_name": "claims repudiation ratio",
      "value": 2.3501,
      "unit": "%",
      "reporting_period_label": "FY22-23",
      "reporting_period_end": "2023-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY22-23",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "5aa7f1a1-5db3-4969-a10d-384e4610eb59",
      "metric_id": "financial.gross_written_premium",
      "metric_name": "gross written premium",
      "value": 3379.75,
      "unit": "crore",
      "reporting_period_label": "FY23-03",
      "reporting_period_end": "2023-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-2-40",
        "reporting_period": "FY23-03",
        "source_document": "IRDAI Handbook Table 40",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "a8e91f5a-7dc7-4bf9-828d-e681da0f8a12",
      "metric_id": "claims.settlement_ratio.nonlife.count",
      "metric_name": "claim settlement ratio",
      "value": 84.0997,
      "unit": "%",
      "reporting_period_label": "FY22-23",
      "reporting_period_end": "2023-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY22-23",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "abe7be88-ad45-4a6b-a08e-0ef2cca753fd",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 76.99,
      "unit": "%",
      "reporting_period_label": "FY22-23",
      "reporting_period_end": "2023-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-10",
        "reporting_period": "FY22-23",
        "source_document": "IRDAI Annual Report 2023-24",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 355
      }
    },
    {
      "id": "f9279a37-2b1d-4380-a7a7-c7b9bcfc5b97",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.27,
      "unit": "x",
      "reporting_period_label": "Q4 FY22-23",
      "reporting_period_end": "2023-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Table-49",
        "reporting_period": "Q4 FY22-23",
        "source_document": "IRDAI Handbook Table 49",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "5ad476eb-0489-4d9d-995c-248808b43344",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.14,
      "unit": "x",
      "reporting_period_label": "Q3 FY22-23",
      "reporting_period_end": "2022-12-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q3 FY22-23",
        "source_document": "IRDAI Annual Report 2022-23",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 328
      }
    },
    {
      "id": "e227b9a9-3fa9-4c1d-abe1-d016d5c8b37c",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.09,
      "unit": "x",
      "reporting_period_label": "Q2 FY22-23",
      "reporting_period_end": "2022-09-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q2 FY22-23",
        "source_document": "IRDAI Annual Report 2022-23",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 328
      }
    },
    {
      "id": "ad644371-8589-4052-9f8f-25b407247467",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.16,
      "unit": "x",
      "reporting_period_label": "Q1 FY22-23",
      "reporting_period_end": "2022-06-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-12",
        "reporting_period": "Q1 FY22-23",
        "source_document": "IRDAI Annual Report 2022-23",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 328
      }
    },
    {
      "id": "10630677-6fe5-404f-8e42-494890c49cf4",
      "metric_id": "claims.repudiation_ratio.nonlife.count",
      "metric_name": "claims repudiation ratio",
      "value": 2.0834,
      "unit": "%",
      "reporting_period_label": "FY21-22",
      "reporting_period_end": "2022-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY21-22",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "17bd28c8-f25f-41ef-b58f-e86ee97fa3b6",
      "metric_id": "claims.settlement_ratio.nonlife.count",
      "metric_name": "claim settlement ratio",
      "value": 84.7189,
      "unit": "%",
      "reporting_period_label": "FY21-22",
      "reporting_period_end": "2022-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY21-22",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "50df8e81-a8a4-49e1-9373-5cd17ac0b12a",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.1,
      "unit": "x",
      "reporting_period_label": "Q4 FY21-22",
      "reporting_period_end": "2022-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Table-49",
        "reporting_period": "Q4 FY21-22",
        "source_document": "IRDAI Handbook Table 49",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "670f161f-07b5-448b-8854-d037e6f845e5",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 84.21,
      "unit": "%",
      "reporting_period_label": "FY21-22",
      "reporting_period_end": "2022-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-10",
        "reporting_period": "FY21-22",
        "source_document": "IRDAI Annual Report 2022-23",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 325
      }
    },
    {
      "id": "c419470a-83bc-483b-93bd-2528b38ab258",
      "metric_id": "financial.gross_written_premium",
      "metric_name": "gross written premium",
      "value": 2866.59,
      "unit": "crore",
      "reporting_period_label": "FY22-03",
      "reporting_period_end": "2022-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-2-40",
        "reporting_period": "FY22-03",
        "source_document": "IRDAI Handbook Table 40",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "a847c0a9-be14-4e1f-8a4e-94577ddef72e",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.14,
      "unit": "x",
      "reporting_period_label": "Q3 FY21-22",
      "reporting_period_end": "2021-12-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-16",
        "reporting_period": "Q3 FY21-22",
        "source_document": "IRDAI Annual Report 2021-22",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 145
      }
    },
    {
      "id": "f9f3241d-0338-4732-bb8f-c4d44002545b",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.07,
      "unit": "x",
      "reporting_period_label": "Q2 FY21-22",
      "reporting_period_end": "2021-09-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-16",
        "reporting_period": "Q2 FY21-22",
        "source_document": "IRDAI Annual Report 2021-22",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 145
      }
    },
    {
      "id": "fd89122c-fb38-4ef0-a37e-24bf97bb03d0",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 1.97,
      "unit": "x",
      "reporting_period_label": "Q1 FY21-22",
      "reporting_period_end": "2021-06-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-16",
        "reporting_period": "Q1 FY21-22",
        "source_document": "IRDAI Annual Report 2021-22",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 145
      }
    },
    {
      "id": "0ca750e5-4fa5-4f80-b903-dd877df0d70a",
      "metric_id": "financial.gross_written_premium",
      "metric_name": "gross written premium",
      "value": 2822.28,
      "unit": "crore",
      "reporting_period_label": "FY21-03",
      "reporting_period_end": "2021-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-2-40",
        "reporting_period": "FY21-03",
        "source_document": "IRDAI Handbook Table 40",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "33b26d2e-9412-46fa-a3f4-b26a7372617e",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 80.4,
      "unit": "%",
      "reporting_period_label": "FY20-21",
      "reporting_period_end": "2021-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-13",
        "reporting_period": "FY20-21",
        "source_document": "IRDAI Annual Report 2020-21",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 170
      }
    },
    {
      "id": "49d8d54d-70ee-4874-8954-2f49b0bc8fb1",
      "metric_id": "claims.settlement_ratio.nonlife.count",
      "metric_name": "claim settlement ratio",
      "value": 89.6179,
      "unit": "%",
      "reporting_period_label": "FY20-21",
      "reporting_period_end": "2021-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY20-21",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "b9eada59-b2fe-4699-8d1f-099c3eb277bf",
      "metric_id": "claims.repudiation_ratio.nonlife.count",
      "metric_name": "claims repudiation ratio",
      "value": 1.4445,
      "unit": "%",
      "reporting_period_label": "FY20-21",
      "reporting_period_end": "2021-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-53",
        "reporting_period": "FY20-21",
        "source_document": "IRDAI Handbook Table 53",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "c8bd2c4a-05ef-4eba-89b7-60f261db8996",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 1.87,
      "unit": "x",
      "reporting_period_label": "Q4 FY20-21",
      "reporting_period_end": "2021-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Table-49",
        "reporting_period": "Q4 FY20-21",
        "source_document": "IRDAI Handbook Table 49",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "20172816-45ac-4ce2-961d-6ea7d0f60f45",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.16,
      "unit": "x",
      "reporting_period_label": "Q3 FY20-21",
      "reporting_period_end": "2020-12-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-17",
        "reporting_period": "Q3 FY20-21",
        "source_document": "IRDAI Annual Report 2020-21",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 176
      }
    },
    {
      "id": "7112dee6-e064-40af-8b76-a43e7956089b",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.31,
      "unit": "x",
      "reporting_period_label": "Q2 FY20-21",
      "reporting_period_end": "2020-09-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-17",
        "reporting_period": "Q2 FY20-21",
        "source_document": "IRDAI Annual Report 2020-21",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 176
      }
    },
    {
      "id": "5022d273-6b4e-4fd3-afed-f3f5f828c496",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 2.01,
      "unit": "x",
      "reporting_period_label": "Q1 FY20-21",
      "reporting_period_end": "2020-06-30",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-17",
        "reporting_period": "Q1 FY20-21",
        "source_document": "IRDAI Annual Report 2020-21",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 176
      }
    },
    {
      "id": "68883fb5-146d-4025-ac98-7e26ef02d951",
      "metric_id": "financial.solvency_ratio",
      "metric_name": "solvency ratio",
      "value": 1.69,
      "unit": "x",
      "reporting_period_label": "Q4 FY19-20",
      "reporting_period_end": "2020-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Table-49",
        "reporting_period": "Q4 FY19-20",
        "source_document": "IRDAI Handbook Table 49",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "a74aa0c6-c36c-4a1d-adf0-d066c41c2445",
      "metric_id": "financial.gross_written_premium",
      "metric_name": "gross written premium",
      "value": 3666.96,
      "unit": "crore",
      "reporting_period_label": "FY20-03",
      "reporting_period_end": "2020-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Handbook-Table-2-40",
        "reporting_period": "FY20-03",
        "source_document": "IRDAI Handbook Table 40",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-19",
        "extraction_note": null,
        "source_page": null
      }
    },
    {
      "id": "be13cf3e-a5bc-4efd-8047-68ceb38b3aa7",
      "metric_id": "financial.incurred_claim_ratio.net",
      "metric_name": "incurred claims ratio",
      "value": 85.03,
      "unit": "%",
      "reporting_period_label": "FY19-20",
      "reporting_period_end": "2020-03-31",
      "provenance": {
        "reported_by": "irdai",
        "regulatory_form": "Statement-13",
        "reporting_period": "FY19-20",
        "source_document": "IRDAI Annual Report 2020-21",
        "source_url": null,
        "extracted_by": null,
        "last_verified": "2026-09-10",
        "extraction_note": null,
        "source_page": 170
      }
    }
  ],
  "meta": {
    "generated_at": "2026-11-15",
    "source": "IRDAI public disclosures",
    "api_version": "v1",
    "licence": "Facts derived from IRDAI public disclosure data. IRDAI public disclosures are published under IRDAI regulations; republication with attribution is permitted subject to applicable Indian law."
  }
}