# Labor induction jumps at maternal age 40, and at 35 with a failed falsification check, without cesarean or newborn changes

## Summary

Turning 35, and again turning 40, moves a pregnancy into the "advanced maternal age" category, which carries more surveillance and more advice to deliver early. Using every US singleton first birth at term from 2016 to 2024, we compared mothers just below and just above each age with a preregistered regression discontinuity, using confidence intervals that stay valid when age is recorded in whole years. Labor induction jumps by {{R1.estimate_pp}} percentage points at 35 (honest 95% CI {{R1.ci_low_pp}} to {{R1.ci_high_pp}}). The preregistered verdict is {{R1.verdict}}, because the share of first births also jumps at 35, by {{R1.nulliparity_share_jump_pp}} points. At 40, induction jumps by {{R2.estimate_pp}} points ({{R2.ci_low_pp}} to {{R2.ci_high_pp}}), and that secondary test meets its confirm rule. Delivery at 39 weeks rises at both ages. Cesarean delivery, NICU admission, low Apgar scores, severe maternal morbidity and term stillbirth show no jump at either age. The label appears to move delivery timing without changing these measured outcomes.

## Claims

- **C1:** At 35, induction among singleton first births at 37-44 weeks jumps by {{R1.estimate_pp}} points (CI {{R1.ci_low_pp}} to {{R1.ci_high_pp}}). The preregistered rule calls this {{R1.verdict}} because a falsification covariate, the nulliparity share, also jumps (by {{R1.nulliparity_share_jump_pp}} points).
- **C2:** At 40, induction jumps by {{R2.estimate_pp}} points (CI {{R2.ci_low_pp}} to {{R2.ci_high_pp}}), with no covariate jump; verdict {{R2.verdict}}.
- **C3:** Delivery at 39 weeks rises by {{R3.age35.delivery_39w.estimate_pp}} points at 35 and by {{R3.age40.delivery_39w.estimate_pp}} points at 40.
- **C4:** Cesarean delivery, NICU admission, Apgar below 7 and a maternal morbidity composite show no discontinuity at 35 or at 40. For example, the cesarean jump at 35 lies between {{R3.age35.cesarean.ci_low_pp}} and {{R3.age35.cesarean.ci_high_pp}} points.
- **C5:** Term stillbirth shows no discontinuity at 35 ({{R4.age35.stillbirth_nulliparous.estimate_pp}} points, CI from {{R4.age35.stillbirth_nulliparous.ci_low_pp}}) or at 40, but these intervals are wide relative to the stillbirth rate.

## Methods

**Preregistration.** The plan was registered before any outcome was tabulated by age ([the registration](prereg:eba635114e0f30e35505c4c97c11053dffd29f743b0933d4cf116ca1ed78c22c); text in `plan/prereg.md`). Before registration, the only outcome information used was the pooled baseline rate at ages 30-39. Induction at 35 is the sole primary test (two-sided, alpha 0.05, no multiplicity split). Induction at 40, the benefit outcomes, stillbirth, all-parity samples and early-term delivery are prespecified secondaries. Every departure from the plan is listed in `deviations.json`.

**Data.** We used the NCHS natality public-use files for 2016-2024 and fetal-death files for 2018-2024, from the NBER mirror (`https://data.nber.org/nvss/natality/csv/` and `https://data.nber.org/nvss/fetaldeath/csv/`). SHA-256 checksums are in `code/SHA256SUMS_raw`. We kept US residents with a non-imputed maternal age, singleton births at 37-44 weeks of combined gestation, and, for the primary sample, nulliparous mothers (no prior live births and none now dead). Yearly row counts match the published NCHS totals. `code/parse.py` and `code/build_cells.py` reduce the records to counts by single year of age, year and parity (`data/cells_main.csv`, `data/cells_sub.csv`, `data/cells_fd.csv`). `code/analysis.py` runs every estimate from these counts. `code/full_pipeline.sh` rebuilds everything from the raw files.

**Estimator.** The estimator is a sharp regression discontinuity in single-year age, with age $a$ treated as covering $[a, a+1)$ and the cutoff at the start of year 35 (or 40). We fit a local linear regression on each side with a triangular kernel over bin centres and cells weighted by births. The bandwidth is $h = 3$ years: ages 32-37 for 35 and 37-42 for 40. The estimate is a linear combination $\hat\tau = \sum_a w_a \bar y_a$. Following [Kolesár and Rothe (2018)](doi:10.1257/aer.20160945), confidence intervals are honest under a bound $M$ on the second derivative of the conditional mean:

$$\hat\tau \pm \Big(\tfrac{M}{2}\sum_a |w_a|\,x_a^2 + 1.96\,\widehat{\mathrm{se}}\Big), \tag{1}$$

where $x_a$ is the distance from the bin centre to the cutoff and $\widehat{\mathrm{se}}^2=\sum_a w_a^2\,\bar y_a(1-\bar y_a)/n_a$. We set $M = 0.1$ percentage points per year squared a priori, from published 5-year age-group rates. Honest p-values are $2\Phi(-(|\hat\tau|-B)/\widehat{\mathrm{se}})$, where $B$ is the bias bound, and 1 when $|\hat\tau| \le B$.

**Decision rule (preregistered).** The smallest effect of interest is 1.0 percentage point at 35 and 2.0 points at 40.
- *Confirm:* the honest CI lies above 0, the estimate is at least half the smallest effect of interest, and no falsification covariate jumps after Holm adjustment across 11 covariates.
- *Refute:* the CI lies within plus or minus the smallest effect of interest.
- *Inconclusive:* otherwise.

**Falsification, placebo and density.** The covariates are bachelor's degree or higher, Medicaid payer, infertility treatment, pre-pregnancy diabetes, chronic hypertension, four race/ethnicity groups, BMI, and the nulliparity share among all singleton term births. We also ran placebo cutoffs at 31, 32, 33, 37 and 38, the RD in log births by age, and the RD in the share of records with induction unknown.

**Sensitivity and subgroups.** For the primary test we varied the bandwidth to 2, 4 and 5, fit a local quadratic at bandwidth 5, set $M$ to 0.05 and 0.2, and added year fixed effects. Subgroups are payer, education, race/ethnicity, period (2016-2019 vs 2020-2024) and infertility treatment.

## Results

**Primary (age 35).** Across {{R1.n_nulliparous_age32_37}} first births at ages 32-37, induction jumps by {{R1.estimate_pp}} points. The standard error is {{R1.se_pp}}, the bias bound {{R1.bias_bound_pp}}, and the honest CI {{R1.ci_low_pp}} to {{R1.ci_high_pp}}. That passes the first two parts of the confirm rule. The falsification part fails: the nulliparity share jumps by {{R1.nulliparity_share_jump_pp}} points (Holm-adjusted p = {{R1.nulliparity_share_p_holm}}), so the verdict is {{R1.verdict}}. No other covariate at 35 has an honest CI that excludes zero (`results/results.json`, `falsification.35`). {{R1.placebo_rejections}} of the placebo cutoffs excluded zero, so $M$ stayed at {{R1.M_decision_pp}} points per year squared.

**Sensitivity.** All sensitivity intervals lie above zero.

**Table 1.** Primary induction jump at 35 under the preregistered sensitivity analyses (percentage points).

| Specification | Estimate | Honest 95% CI |
|---|---|---|
| Bandwidth 2 | {{R5.h2.estimate_pp}} | {{R5.h2.ci_low_pp}} to {{R5.h2.ci_high_pp}} |
| Bandwidth 4 | {{R5.h4.estimate_pp}} | {{R5.h4.ci_low_pp}} to {{R5.h4.ci_high_pp}} |
| Bandwidth 5 | {{R5.h5.estimate_pp}} | {{R5.h5.ci_low_pp}} to {{R5.h5.ci_high_pp}} |
| Local quadratic, bandwidth 5 | {{R5.quadratic_h5.estimate_pp}} | {{R5.quadratic_h5.ci_low_pp}} to {{R5.quadratic_h5.ci_high_pp}} |
| $M$ = 0.05 | {{R5.M0.05pp.estimate_pp}} | {{R5.M0.05pp.ci_low_pp}} to {{R5.M0.05pp.ci_high_pp}} |
| $M$ = 0.2 | {{R5.M0.2pp.estimate_pp}} | {{R5.M0.2pp.ci_low_pp}} to {{R5.M0.2pp.ci_high_pp}} |
| Year fixed effects | {{R5.year_fixed_effects.estimate_pp}} | {{R5.year_fixed_effects.ci_low_pp}} to {{R5.year_fixed_effects.ci_high_pp}} |

**Age 40 (secondary).** Across {{R2.n_nulliparous_age37_42}} first births at ages 37-42, induction jumps by {{R2.estimate_pp}} points (CI {{R2.ci_low_pp}} to {{R2.ci_high_pp}}). No covariate jumps after Holm adjustment, so the verdict is {{R2.verdict}}.

**Key secondary outcomes.**

**Table 2.** Jumps in the key secondary outcomes at 35 and 40 (percentage points, honest 95% CI).

| Outcome | Age 35 | Age 40 |
|---|---|---|
| Delivery at 39 weeks | {{R3.age35.delivery_39w.estimate_pp}} ({{R3.age35.delivery_39w.ci_low_pp}} to {{R3.age35.delivery_39w.ci_high_pp}}) | {{R3.age40.delivery_39w.estimate_pp}} ({{R3.age40.delivery_39w.ci_low_pp}} to {{R3.age40.delivery_39w.ci_high_pp}}) |
| Cesarean | {{R3.age35.cesarean.estimate_pp}} ({{R3.age35.cesarean.ci_low_pp}} to {{R3.age35.cesarean.ci_high_pp}}) | {{R3.age40.cesarean.estimate_pp}} ({{R3.age40.cesarean.ci_low_pp}} to {{R3.age40.cesarean.ci_high_pp}}) |
| NICU admission | {{R3.age35.nicu.estimate_pp}} ({{R3.age35.nicu.ci_low_pp}} to {{R3.age35.nicu.ci_high_pp}}) | {{R3.age40.nicu.estimate_pp}} ({{R3.age40.nicu.ci_low_pp}} to {{R3.age40.nicu.ci_high_pp}}) |
| Apgar below 7 | {{R3.age35.apgar5_lt7.estimate_pp}} ({{R3.age35.apgar5_lt7.ci_low_pp}} to {{R3.age35.apgar5_lt7.ci_high_pp}}) | {{R3.age40.apgar5_lt7.estimate_pp}} ({{R3.age40.apgar5_lt7.ci_low_pp}} to {{R3.age40.apgar5_lt7.ci_high_pp}}) |
| Maternal morbidity | {{R3.age35.maternal_morbidity.estimate_pp}} ({{R3.age35.maternal_morbidity.ci_low_pp}} to {{R3.age35.maternal_morbidity.ci_high_pp}}) | {{R3.age40.maternal_morbidity.estimate_pp}} ({{R3.age40.maternal_morbidity.ci_low_pp}} to {{R3.age40.maternal_morbidity.ci_high_pp}}) |
| Term stillbirth | {{R4.age35.stillbirth_nulliparous.estimate_pp}} ({{R4.age35.stillbirth_nulliparous.ci_low_pp}} to {{R4.age35.stillbirth_nulliparous.ci_high_pp}}) | {{R4.age40.stillbirth_nulliparous.estimate_pp}} ({{R4.age40.stillbirth_nulliparous.ci_low_pp}} to {{R4.age40.stillbirth_nulliparous.ci_high_pp}}) |
| Induction, all parities | {{R4.age35.induction_allparity.estimate_pp}} ({{R4.age35.induction_allparity.ci_low_pp}} to {{R4.age35.induction_allparity.ci_high_pp}}) | {{R4.age40.induction_allparity.estimate_pp}} ({{R4.age40.induction_allparity.ci_low_pp}} to {{R4.age40.induction_allparity.ci_high_pp}}) |

The remaining results are in `results/results.json`: the Holm-adjusted p-values, the subgroups (every subgroup estimate at 35 is positive), the density tests, early-term delivery and the placebos. Pooled rates by age are in `results/rates_by_age_nulliparous.csv`.

## Discussion

[Geiger et al. (2021)](doi:10.1001/jamahealthforum.2021.4044) found more prenatal surveillance at 35 in commercial claims but could not measure induction or delivery method. Birth certificates record both for every US birth. The jump at 40 fits the consensus guidance to consider delivery at 39 weeks from age 40 ([ACOG and SMFM (2022)](doi:10.1097/AOG.0000000000004873)): induction and 39-week delivery both rise sharply there.

At 35 the induction jump is about two fifths as large, and the guidance there recommends no timing change. The jump is stable across the sensitivity analyses and subgroups, but the plan's falsification rule was not met. The covariate that failed, the share of first births, is a feature of the all-parity population rather than of the nulliparous sample the estimate uses. One explanation is that it reflects reporting of prior births around 35. Another is that the age-35 label changes who is recorded as a first-time mother. Linked records of prior births would tell them apart.

Neither cutoff shows a change in cesarean, NICU admission, Apgar scores or maternal morbidity. For low-risk first births, extra induction prompted by the label is neither offset nor amplified by these outcomes at the precision available here.

## Limitations

- **Discrete age.** The age recorded is age at delivery, so mothers who reached 35 between the due date and delivery are misclassified, which biases estimates toward zero.
- **Curvature bound.** The honest intervals rest on the curvature bound $M$; larger $M$ widens them (Table 1).
- **Uninformative tests.** The BMI and density tests use data-derived curvature bounds wide enough to be uninformative (see `deviations.json`).
- **Falsification failure.** The falsification failure at 35 is unexplained.
- **Stillbirth.** Stillbirth intervals are wide relative to the outcome's rate.
- **Data quality.** Birth-certificate induction and morbidity fields are under-reported relative to medical records. Under-reporting that is smooth in age does not bias the RD, but it scales jumps toward zero.
- **Missing outcomes.** Infant death after birth was not studied.

## Provenance

- **Who did the work:** an agent of the grok model family designed the study, wrote the preregistration and all code, and ran the analysis; a person approved the registration and the analysis run.
- **Data:** NCHS public-use files from the NBER mirror. No other data were used.
- **Reproduction:** all computations ran in the container defined in `env/Dockerfile`, twice with byte-identical outputs.
