Developer ToolsFree generatorPDF, Excel, Word exportAutomotive

Warranty Claims Pareto and Months-in-Service SQL Query Generator

Two views drive most warranty investigations: which failure modes account for most of the claims, and how soon after sale they appear. This generator writes the SQL for both against your own claims table, with the cumulative percentage that a Pareto chart needs.

Fill in

Generic name. Replace with your real table or view.

Generated code
Download:

1. Pareto by failure mode with cumulative percent

SELECT
  failure_mode_code AS failure_mode,
  COUNT(*) AS claim_count,
  SUM(claim_cost) AS total_cost,
  100.0 * COUNT(*) / SUM(COUNT(*)) OVER () AS pct_of_claims,
  100.0 * SUM(COUNT(*)) OVER (ORDER BY COUNT(*) DESC, failure_mode_code) / SUM(COUNT(*)) OVER () AS cumulative_pct
FROM warranty_claims
WHERE part_no = 'AS-BRKT-210'
  AND claim_date >= '2025-01-01'
  AND claim_date <= '2026-09-30'
GROUP BY failure_mode_code
ORDER BY claim_count DESC;

2. Months in service distribution (SQL Server syntax)

SELECT
  DATEDIFF(month, in_service_date, claim_date) AS months_in_service,
  COUNT(*) AS claim_count,
  SUM(claim_cost) AS total_cost
FROM warranty_claims
WHERE part_no = 'AS-BRKT-210'
  AND claim_date >= '2025-01-01'
  AND claim_date <= '2026-09-30'
GROUP BY DATEDIFF(month, in_service_date, claim_date)
ORDER BY months_in_service;

3. Months in service (PostgreSQL syntax)

SELECT
  (EXTRACT(YEAR FROM age(claim_date, in_service_date)) * 12
   + EXTRACT(MONTH FROM age(claim_date, in_service_date)))::int AS months_in_service,
  COUNT(*) AS claim_count,
  SUM(claim_cost) AS total_cost
FROM warranty_claims
WHERE part_no = 'AS-BRKT-210'
  AND claim_date >= '2025-01-01'
  AND claim_date <= '2026-09-30'
GROUP BY 1
ORDER BY 1;

Table and column names are generic. Map them to your claims data and check date handling for your database. Pareto percentages count claims, not vehicles, so combine with in-service volume to get claims per thousand vehicles.

Warranty analytics review

Optional: we can discuss how warranty queries could be run safely against your ERP and quality data.

Optional. The tool and every export work without this. No spam.

How to use the generator

Enter the name of your claims table or view and the columns that hold part number, failure mode, cost, in-service date and claim date. Choose the part and date window, then copy the queries. The first query returns the Pareto data. The second returns the months-in-service distribution, in SQL Server or PostgreSQL syntax. Run them on a read replica or a reporting copy, not on your transactional system during production hours.

Reading the Pareto

Sort order and the cumulative percentage show where effort pays back. If three failure modes account for around 80 percent of claims, those are the first 8D or CAPA candidates. Sort by cost as well as count, because a rare failure with a high claim value can outweigh a frequent cheap one. Keep failure modes coded consistently, otherwise the Pareto fragments into near-duplicates and hides the real leader.

  • Cumulative percent uses a window function
  • Run once by count and once by cost
  • Clean up failure mode codes before charting

Months in service

A months-in-service distribution shows when parts fail relative to when the vehicle entered service. A spike in the first months points to manufacturing or assembly problems and early-life failures. A rising tail points to wear-out or durability issues. Compare production month cohorts to see whether a process change coincided with the shift. This is the basic structure behind warranty analysis guidance such as the AIAG CQI-14 guideline.

Common mistakes

The main mistake is analysing claims without exposure. Ten claims on a part that sold one thousand vehicles is different from ten claims on a part that sold one hundred thousand. Also check for claims with missing in-service dates, which will produce nulls or negative months, and exclude or review them. Finally, remember currency and goodwill claims can distort cost totals.

Frequently Asked Questions

Why does the Pareto use a window function?

A window function lets one query compute each failure mode's count, its share of all claims and the running cumulative percentage in a single pass. That gives the data needed to draw the cumulative line on a Pareto chart.

Will this work on Oracle or MySQL?

The Pareto query uses standard window functions available in modern Oracle, MySQL 8 and others. The months-in-service queries are shown for SQL Server and PostgreSQL, so adjust the date difference function for other databases.

How do I get claims per thousand vehicles?

Divide the claim count by the number of vehicles or parts in service for the same period and multiply by one thousand. You need exposure data from sales or production, which these queries do not include.

Can I run this directly on my ERP database?

Prefer a reporting copy or read-only view. The queries only read data, but long scans can slow a transactional system. Test on a small date range and have a database administrator review before scheduling.

If warranty data sits in one system and production lots in your ERP, Netray can discuss a private assistant that links them and shows the exact query it ran.