{
  "metric": {
    "id": "financial.claims_paid_to_provisioned_ratio",
    "slug": "claims-paid-to-provisioned",
    "name": "Claims Paid to Provisioned Ratio",
    "metric_short_name": "claims paid to provisioned ratio",
    "unit": "%",
    "definition": "Claims actually paid in the period as a percentage of total claims provisioned (opening outstanding + IBNR). Measures the rate at which the insurer is converting its claims liability into actual payments. A very low ratio may indicate slow claims settlement; a very high ratio may indicate under-provisioning.",
    "higher_is_better": null,
    "metric_status": "regulatory_native",
    "regulatory_form": "NL-20",
    "applicable_to": [
      "general",
      "health"
    ]
  },
  "facts": [
    {
      "insurer_id": "agriculture-insurance",
      "insurer_name": "Agriculture Insurance Company of India",
      "insurer_slug": "agriculture-insurance",
      "value": 30.05,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "agriculture-insurance",
        "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
      }
    },
    {
      "insurer_id": "shriram-general",
      "insurer_name": "Shriram General Insurance",
      "insurer_slug": "shriram-general",
      "value": 5.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "shriram-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "2026-06-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "icici-lombard",
      "insurer_name": "ICICI Lombard General Insurance",
      "insurer_slug": "icici-lombard",
      "value": 7.6,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "icici-lombard",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "2026-06-30_nl-20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "hdfc-ergo",
      "insurer_name": "HDFC ERGO General Insurance",
      "insurer_slug": "hdfc-ergo",
      "value": 6.03,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "hdfc-ergo",
        "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
      }
    },
    {
      "insurer_id": "go-digit-general",
      "insurer_name": "Digit General Insurance",
      "insurer_slug": "go-digit-general",
      "value": 4.22,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "go-digit-general",
        "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
      }
    },
    {
      "insurer_id": "ecgc",
      "insurer_name": "ECGC",
      "insurer_slug": "ecgc",
      "value": 70,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "ecgc",
        "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
      }
    },
    {
      "insurer_id": "care-health",
      "insurer_name": "Care Health Insurance",
      "insurer_slug": "care-health",
      "value": 0.97,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "care-health",
        "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
      }
    },
    {
      "insurer_id": "universal-sompo",
      "insurer_name": "Universal Sompo General Insurance",
      "insurer_slug": "universal-sompo",
      "value": 20.14,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "universal-sompo",
        "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
      }
    },
    {
      "insurer_id": "generali-central",
      "insurer_name": "Generali Central Insurance (formerly Future Generali)",
      "insurer_slug": "generali-central",
      "value": 12.3,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "generali-central",
        "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
      }
    },
    {
      "insurer_id": "zurich-kotak",
      "insurer_name": "Zurich Kotak General Insurance",
      "insurer_slug": "zurich-kotak",
      "value": 12,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "zurich-kotak",
        "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
      }
    },
    {
      "insurer_id": "iffco-tokio",
      "insurer_name": "IFFCO Tokio General Insurance",
      "insurer_slug": "iffco-tokio",
      "value": 6.9,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "iffco-tokio",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "2026-06-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "reliance-general",
      "insurer_name": "Reliance General Insurance",
      "insurer_slug": "reliance-general",
      "value": 7.75,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "reliance-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "2026-06-30_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 13.63,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "2026-06-30_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "galaxy-health",
      "insurer_name": "Galaxy Health Insurance",
      "insurer_slug": "galaxy-health",
      "value": 93,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "galaxy-health",
        "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
      }
    },
    {
      "insurer_id": "raheja-qbe",
      "insurer_name": "Raheja QBE General Insurance",
      "insurer_slug": "raheja-qbe",
      "value": 14.9,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "raheja-qbe",
        "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
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 7.18,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "2026-06-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "sbi-general",
      "insurer_name": "SBI General Insurance",
      "insurer_slug": "sbi-general",
      "value": 14.63,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "sbi-general",
        "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
      }
    },
    {
      "insurer_id": "narayana-health-insurance",
      "insurer_name": "Narayana Health Insurance",
      "insurer_slug": "narayana-health-insurance",
      "value": 0.94,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "narayana-health-insurance",
        "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
      }
    },
    {
      "insurer_id": "bajaj-allianz-general",
      "insurer_name": "Bajaj Allianz General Insurance",
      "insurer_slug": "bajaj-allianz-general",
      "value": 13.57,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "bajaj-allianz-general",
        "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
      }
    },
    {
      "insurer_id": "liberty-general",
      "insurer_name": "Liberty General Insurance",
      "insurer_slug": "liberty-general",
      "value": 54,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "liberty-general",
        "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
      }
    },
    {
      "insurer_id": "royal-sundaram",
      "insurer_name": "Royal Sundaram General Insurance",
      "insurer_slug": "royal-sundaram",
      "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
      }
    },
    {
      "insurer_id": "star-health",
      "insurer_name": "Star Health Insurance",
      "insurer_slug": "star-health",
      "value": 61.44,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "star-health",
        "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
      }
    },
    {
      "insurer_id": "zuno-general",
      "insurer_name": "Zuno General Insurance",
      "insurer_slug": "zuno-general",
      "value": 57,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "zuno-general",
        "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
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 6.74,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "Public_Disclosure_Q1_2026_27_1_a86ea579b6.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "manipal-cigna",
      "insurer_name": "ManipalCigna Health Insurance",
      "insurer_slug": "manipal-cigna",
      "value": 44,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "manipal-cigna",
        "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
      }
    },
    {
      "insurer_id": "niva-bupa",
      "insurer_name": "Niva Bupa Health Insurance",
      "insurer_slug": "niva-bupa",
      "value": 85.64,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "niva-bupa",
        "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
      }
    },
    {
      "insurer_id": "tata-aig",
      "insurer_name": "Tata AIG General Insurance",
      "insurer_slug": "tata-aig",
      "value": 5,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "tata-aig",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY26-27",
        "source_document": "NL_20_064a4a37b4.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "kshema-general",
      "insurer_name": "Kshema General Insurance",
      "insurer_slug": "kshema-general",
      "value": 100,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "kshema-general",
        "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
      }
    },
    {
      "insurer_id": "magma-general",
      "insurer_name": "Magma General Insurance",
      "insurer_slug": "magma-general",
      "value": 12.9,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "magma-general",
        "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
      }
    },
    {
      "insurer_id": "navi-general",
      "insurer_name": "Navi General Insurance",
      "insurer_slug": "navi-general",
      "value": 36,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "navi-general",
        "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
      }
    },
    {
      "insurer_id": "aditya-birla-health",
      "insurer_name": "Aditya Birla Health Insurance",
      "insurer_slug": "aditya-birla-health",
      "value": 100,
      "unit": "%",
      "reporting_period_label": "Q1 FY26-27",
      "reporting_period_end": "2026-06-30",
      "provenance": {
        "reported_by": "aditya-birla-health",
        "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
      }
    },
    {
      "insurer_id": "iffco-tokio",
      "insurer_name": "IFFCO Tokio General Insurance",
      "insurer_slug": "iffco-tokio",
      "value": 23.73,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "iffco-tokio",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "2026-03-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 0,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "2026-03-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "reliance-general",
      "insurer_name": "Reliance General Insurance",
      "insurer_slug": "reliance-general",
      "value": 5.92,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "reliance-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "2026-03-31_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "ecgc",
      "insurer_name": "ECGC",
      "insurer_slug": "ecgc",
      "value": 11.65,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "ecgc",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "NL_till_now_fy2526_q4.pdf",
        "source_url": "https://main.ecgc.in/english/wp-content/uploads/2026/04/NL_till_now_fy2526_q4.pdf",
        "extracted_by": "irw_adapter v1 (manual, single-segment filing)",
        "last_verified": "2026-10-26",
        "extraction_note": "ECGC reports NL-20 under a single 'Miscellaneous Segment' column (credit insurer, no standard multi-segment split). 'For the Period ended' (standalone-quarter) column used, not the cumulative 'Up to Period' column. gdp_to_networth_ratio stored x100 (source shows a bare 'Times' multiple, e.g. 0.05) matching today's established project convention for that metric; technical_reserves_to_premium_ratio stored raw (also a 'Times' multiple in the source, but matches the convention already used for other insurers' values of this specific metric, e.g. acko-general ~1-2). Pulled directly from ECGC's own site 2026-10-26.",
        "source_page": 26
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 8.37,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "Public_Disclosure_Q4_2025_26_d11ebbad81.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-11-03",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 68.76,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "2026-03-31_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "icici-lombard",
      "insurer_name": "ICICI Lombard General Insurance",
      "insurer_slug": "icici-lombard",
      "value": 2.5,
      "unit": "%",
      "reporting_period_label": "Q4 FY25-26",
      "reporting_period_end": "2026-03-31",
      "provenance": {
        "reported_by": "icici-lombard",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY25-26",
        "source_document": "2026-03-31_nl-20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 50.11,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "2025-12-31_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "ecgc",
      "insurer_name": "ECGC",
      "insurer_slug": "ecgc",
      "value": 6.09,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "ecgc",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "NL_till_now_fy2526_q3.pdf",
        "source_url": "https://main.ecgc.in/english/wp-content/uploads/2026/01/NL_till_now_fy2526_q3.pdf",
        "extracted_by": "irw_adapter v1 (manual, single-segment filing)",
        "last_verified": "2026-10-26",
        "extraction_note": "ECGC reports NL-20 under a single 'Miscellaneous Segment' column (credit insurer, no standard multi-segment split). 'For the Period ended' (standalone-quarter) column used, not the cumulative 'Up to Period' column. gdp_to_networth_ratio stored x100 (source shows a bare 'Times' multiple, e.g. 0.05) matching today's established project convention for that metric; technical_reserves_to_premium_ratio stored raw (also a 'Times' multiple in the source, but matches the convention already used for other insurers' values of this specific metric, e.g. acko-general ~1-2). Pulled directly from ECGC's own site 2026-10-26.",
        "source_page": 26
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 4.1,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "2025-12-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "icici-lombard",
      "insurer_name": "ICICI Lombard General Insurance",
      "insurer_slug": "icici-lombard",
      "value": 3.2,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "icici-lombard",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "2025-12-31_nl-20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 6.98,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "Public_Disclosure_Q3_2025_26_dcc0682a64.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "reliance-general",
      "insurer_name": "Reliance General Insurance",
      "insurer_slug": "reliance-general",
      "value": 6.09,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "reliance-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "2025-12-31_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "iffco-tokio",
      "insurer_name": "IFFCO Tokio General Insurance",
      "insurer_slug": "iffco-tokio",
      "value": 17.9,
      "unit": "%",
      "reporting_period_label": "Q3 FY25-26",
      "reporting_period_end": "2025-12-31",
      "provenance": {
        "reported_by": "iffco-tokio",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY25-26",
        "source_document": "2025-12-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "reliance-general",
      "insurer_name": "Reliance General Insurance",
      "insurer_slug": "reliance-general",
      "value": 10.18,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "reliance-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "2025-09-30_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "ecgc",
      "insurer_name": "ECGC",
      "insurer_slug": "ecgc",
      "value": 2.63,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "ecgc",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "NL_till_now_fy2526_q2.pdf",
        "source_url": "https://main.ecgc.in/english/wp-content/themes/pcwebecgc/images/pcECGPagePDF/Public/2025-2026/secondQ/NL_till_now_fy2526_q2.pdf",
        "extracted_by": "irw_adapter v1 (manual, single-segment filing)",
        "last_verified": "2026-10-26",
        "extraction_note": "ECGC reports NL-20 under a single 'Miscellaneous Segment' column (credit insurer, no standard multi-segment split). 'For the Period ended' (standalone-quarter) column used, not the cumulative 'Up to Period' column. gdp_to_networth_ratio stored x100 (source shows a bare 'Times' multiple, e.g. 0.05) matching today's established project convention for that metric; technical_reserves_to_premium_ratio stored raw (also a 'Times' multiple in the source, but matches the convention already used for other insurers' values of this specific metric, e.g. acko-general ~1-2). Pulled directly from ECGC's own site 2026-10-26.",
        "source_page": 26
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 9.71,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "Public_Disclosure_Q2_2025_26_e4d63b4702.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "icici-lombard",
      "insurer_name": "ICICI Lombard General Insurance",
      "insurer_slug": "icici-lombard",
      "value": 4,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "icici-lombard",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "2025-09-30_nl-20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "iffco-tokio",
      "insurer_name": "IFFCO Tokio General Insurance",
      "insurer_slug": "iffco-tokio",
      "value": 13.17,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "iffco-tokio",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "2025-09-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 31.97,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "2025-09-30_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 16.17,
      "unit": "%",
      "reporting_period_label": "Q2 FY25-26",
      "reporting_period_end": "2025-09-30",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY25-26",
        "source_document": "2025-09-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "niva-bupa",
      "insurer_name": "Niva Bupa Health Insurance",
      "insurer_slug": "niva-bupa",
      "value": 83.67,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "niva-bupa",
        "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
      }
    },
    {
      "insurer_id": "universal-sompo",
      "insurer_name": "Universal Sompo General Insurance",
      "insurer_slug": "universal-sompo",
      "value": 17.4,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "universal-sompo",
        "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
      }
    },
    {
      "insurer_id": "magma-general",
      "insurer_name": "Magma General Insurance",
      "insurer_slug": "magma-general",
      "value": 10.33,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "magma-general",
        "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
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 14.33,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "2025-06-30_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "agriculture-insurance",
      "insurer_name": "Agriculture Insurance Company of India",
      "insurer_slug": "agriculture-insurance",
      "value": 11.12,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "agriculture-insurance",
        "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
      }
    },
    {
      "insurer_id": "manipal-cigna",
      "insurer_name": "ManipalCigna Health Insurance",
      "insurer_slug": "manipal-cigna",
      "value": 48,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "manipal-cigna",
        "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
      }
    },
    {
      "insurer_id": "royal-sundaram",
      "insurer_name": "Royal Sundaram General Insurance",
      "insurer_slug": "royal-sundaram",
      "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
      }
    },
    {
      "insurer_id": "care-health",
      "insurer_name": "Care Health Insurance",
      "insurer_slug": "care-health",
      "value": 0.98,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "care-health",
        "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
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 5.45,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "2025-06-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "reliance-general",
      "insurer_name": "Reliance General Insurance",
      "insurer_slug": "reliance-general",
      "value": 6.07,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "reliance-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "2025-06-30_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "star-health",
      "insurer_name": "Star Health Insurance",
      "insurer_slug": "star-health",
      "value": 64.27,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "star-health",
        "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
      }
    },
    {
      "insurer_id": "ecgc",
      "insurer_name": "ECGC",
      "insurer_slug": "ecgc",
      "value": 76,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "ecgc",
        "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
      }
    },
    {
      "insurer_id": "iffco-tokio",
      "insurer_name": "IFFCO Tokio General Insurance",
      "insurer_slug": "iffco-tokio",
      "value": 6.52,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "iffco-tokio",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "2025-06-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "zurich-kotak",
      "insurer_name": "Zurich Kotak General Insurance",
      "insurer_slug": "zurich-kotak",
      "value": 11,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "zurich-kotak",
        "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
      }
    },
    {
      "insurer_id": "shriram-general",
      "insurer_name": "Shriram General Insurance",
      "insurer_slug": "shriram-general",
      "value": 6.06,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "shriram-general",
        "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
      }
    },
    {
      "insurer_id": "go-digit-general",
      "insurer_name": "Digit General Insurance",
      "insurer_slug": "go-digit-general",
      "value": 3.85,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "go-digit-general",
        "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
      }
    },
    {
      "insurer_id": "navi-general",
      "insurer_name": "Navi General Insurance",
      "insurer_slug": "navi-general",
      "value": 20,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "navi-general",
        "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
      }
    },
    {
      "insurer_id": "zuno-general",
      "insurer_name": "Zuno General Insurance",
      "insurer_slug": "zuno-general",
      "value": 66,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "zuno-general",
        "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
      }
    },
    {
      "insurer_id": "kshema-general",
      "insurer_name": "Kshema General Insurance",
      "insurer_slug": "kshema-general",
      "value": 75.36,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "kshema-general",
        "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
      }
    },
    {
      "insurer_id": "tata-aig",
      "insurer_name": "Tata AIG General Insurance",
      "insurer_slug": "tata-aig",
      "value": 5,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "tata-aig",
        "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
      }
    },
    {
      "insurer_id": "liberty-general",
      "insurer_name": "Liberty General Insurance",
      "insurer_slug": "liberty-general",
      "value": 46,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "liberty-general",
        "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
      }
    },
    {
      "insurer_id": "hdfc-ergo",
      "insurer_name": "HDFC ERGO General Insurance",
      "insurer_slug": "hdfc-ergo",
      "value": -31,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "hdfc-ergo",
        "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
      }
    },
    {
      "insurer_id": "icici-lombard",
      "insurer_name": "ICICI Lombard General Insurance",
      "insurer_slug": "icici-lombard",
      "value": 6.6,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "icici-lombard",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "2025-06-30_nl-20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "aditya-birla-health",
      "insurer_name": "Aditya Birla Health Insurance",
      "insurer_slug": "aditya-birla-health",
      "value": 82,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "aditya-birla-health",
        "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
      }
    },
    {
      "insurer_id": "sbi-general",
      "insurer_name": "SBI General Insurance",
      "insurer_slug": "sbi-general",
      "value": 15.5,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "sbi-general",
        "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
      }
    },
    {
      "insurer_id": "raheja-qbe",
      "insurer_name": "Raheja QBE General Insurance",
      "insurer_slug": "raheja-qbe",
      "value": 3.2,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "raheja-qbe",
        "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
      }
    },
    {
      "insurer_id": "generali-central",
      "insurer_name": "Generali Central Insurance (formerly Future Generali)",
      "insurer_slug": "generali-central",
      "value": 16,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "generali-central",
        "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
      }
    },
    {
      "insurer_id": "bajaj-allianz-general",
      "insurer_name": "Bajaj Allianz General Insurance",
      "insurer_slug": "bajaj-allianz-general",
      "value": 12.81,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "bajaj-allianz-general",
        "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
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 6.8,
      "unit": "%",
      "reporting_period_label": "Q1 FY25-26",
      "reporting_period_end": "2025-06-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY25-26",
        "source_document": "Public_Disclosure_Q1_2025_26_88410d1158.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 69.28,
      "unit": "%",
      "reporting_period_label": "Q4 FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY24-25",
        "source_document": "2025-03-31_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "iffco-tokio",
      "insurer_name": "IFFCO Tokio General Insurance",
      "insurer_slug": "iffco-tokio",
      "value": 27.52,
      "unit": "%",
      "reporting_period_label": "Q4 FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "iffco-tokio",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY24-25",
        "source_document": "2025-03-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 9.05,
      "unit": "%",
      "reporting_period_label": "Q4 FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY24-25",
        "source_document": "Public_Disclosure_Q4_2024_25_b9e980b08e.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 3.53,
      "unit": "%",
      "reporting_period_label": "Q4 FY24-25",
      "reporting_period_end": "2025-03-31",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY24-25",
        "source_document": "2025-03-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "iffco-tokio",
      "insurer_name": "IFFCO Tokio General Insurance",
      "insurer_slug": "iffco-tokio",
      "value": 20.83,
      "unit": "%",
      "reporting_period_label": "Q3 FY24-25",
      "reporting_period_end": "2024-12-31",
      "provenance": {
        "reported_by": "iffco-tokio",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY24-25",
        "source_document": "2024-12-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 45.88,
      "unit": "%",
      "reporting_period_label": "Q3 FY24-25",
      "reporting_period_end": "2024-12-31",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY24-25",
        "source_document": "2024-12-31_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 3.7,
      "unit": "%",
      "reporting_period_label": "Q3 FY24-25",
      "reporting_period_end": "2024-12-31",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY24-25",
        "source_document": "2024-12-31.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 10.16,
      "unit": "%",
      "reporting_period_label": "Q3 FY24-25",
      "reporting_period_end": "2024-12-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY24-25",
        "source_document": "Public_Disclosure_Q3_2024_25_fe3c0d6ef7.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 8.78,
      "unit": "%",
      "reporting_period_label": "Q2 FY24-25",
      "reporting_period_end": "2024-09-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY24-25",
        "source_document": "Public_Disclosure_Q2_2024_25_2_8bc4985a15.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 12.19,
      "unit": "%",
      "reporting_period_label": "Q2 FY24-25",
      "reporting_period_end": "2024-09-30",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY24-25",
        "source_document": "2024-09-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "oriental-insurance",
      "insurer_name": "Oriental Insurance Company",
      "insurer_slug": "oriental-insurance",
      "value": 32.92,
      "unit": "%",
      "reporting_period_label": "Q2 FY24-25",
      "reporting_period_end": "2024-09-30",
      "provenance": {
        "reported_by": "oriental-insurance",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY24-25",
        "source_document": "2024-09-30_nl20.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 8.22,
      "unit": "%",
      "reporting_period_label": "Q1 FY24-25",
      "reporting_period_end": "2024-06-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY24-25",
        "source_document": "Public_Disclosure_Q1_2024_25_1c7cda3d75.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "cholamandalam-ms-general",
      "insurer_name": "Chola MS General Insurance",
      "insurer_slug": "cholamandalam-ms-general",
      "value": 8.93,
      "unit": "%",
      "reporting_period_label": "Q1 FY24-25",
      "reporting_period_end": "2024-06-30",
      "provenance": {
        "reported_by": "cholamandalam-ms-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY24-25",
        "source_document": "2024-06-30.pdf",
        "source_url": null,
        "extracted_by": "nonlife_adapter.py v1",
        "last_verified": "2026-09-10",
        "extraction_note": "NL-20 row-format label match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 15,
      "unit": "%",
      "reporting_period_label": "Q4 FY23-24",
      "reporting_period_end": "2024-03-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY23-24",
        "source_document": "Public_Disclosure_Q4_2023_24_1_7583ccec37.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 15.8,
      "unit": "%",
      "reporting_period_label": "Q3 FY23-24",
      "reporting_period_end": "2023-12-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY23-24",
        "source_document": "Public_Disclosure_Q3_2023-24.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 13.07,
      "unit": "%",
      "reporting_period_label": "Q2 FY23-24",
      "reporting_period_end": "2023-09-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY23-24",
        "source_document": "Public_Disclosure_Q2_2023-24.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 12.77,
      "unit": "%",
      "reporting_period_label": "Q1 FY23-24",
      "reporting_period_end": "2023-06-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY23-24",
        "source_document": "Public_Disclosure_Q1_2023-24.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 15.88,
      "unit": "%",
      "reporting_period_label": "Q4 FY22-23",
      "reporting_period_end": "2023-03-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY22-23",
        "source_document": "Public_Disclosure_Q4_2022_23_1_c8ef63f824.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 20.59,
      "unit": "%",
      "reporting_period_label": "Q3 FY22-23",
      "reporting_period_end": "2022-12-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY22-23",
        "source_document": "Public_Disclosure_-_Q3_-_FY_2022-23.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 21.58,
      "unit": "%",
      "reporting_period_label": "Q2 FY22-23",
      "reporting_period_end": "2022-09-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY22-23",
        "source_document": "public-disclosure_-q2-fy-2022-23.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 12.69,
      "unit": "%",
      "reporting_period_label": "Q1 FY22-23",
      "reporting_period_end": "2022-06-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q1 FY22-23",
        "source_document": "public-disclosure-q1-fy-2022-23.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 19.41,
      "unit": "%",
      "reporting_period_label": "Q4 FY21-22",
      "reporting_period_end": "2022-03-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q4 FY21-22",
        "source_document": "Public_Disclosure_Q4_FY_2021_22_591d355128.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 19.84,
      "unit": "%",
      "reporting_period_label": "Q3 FY21-22",
      "reporting_period_end": "2021-12-31",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q3 FY21-22",
        "source_document": "public-disclosure-q3-fy-2021-22.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    },
    {
      "insurer_id": "acko-general",
      "insurer_name": "Acko General Insurance",
      "insurer_slug": "acko-general",
      "value": 24.21,
      "unit": "%",
      "reporting_period_label": "Q2 FY21-22",
      "reporting_period_end": "2021-09-30",
      "provenance": {
        "reported_by": "acko-general",
        "regulatory_form": "NL-20-ANALYTICAL-RATIOS",
        "reporting_period": "Q2 FY21-22",
        "source_document": "public-disclosure-q2-fy-2021-22.pdf",
        "source_url": null,
        "extracted_by": "irw_adapter v1",
        "last_verified": "2026-10-31",
        "extraction_note": "NL-20 text-fallback line match: claims_paid_provisioned",
        "source_page": null
      }
    }
  ],
  "meta": {
    "generated_at": "2026-11-15",
    "source": "IRDAI public disclosures",
    "api_version": "v1",
    "licence": "Facts derived from IRDAI public disclosure data. Republication with attribution permitted subject to applicable Indian law."
  }
}