Truveta brand logo mark in teal on a black background, featuring stacked chevron shapes forming the Truveta symbol.

From narrative text to usable data: Making cancer staging data research-ready

by | Nov 10, 2026

We recently shared our work on extracting cancer stage from clinical notes. This week at AMIA’s Annual Symposium, we presented the next step: how we normalized 2.5 million cancer staging records so researchers can use them. A note tells us that a patient has “pT2N0, Stage IB” cancer. Our extraction cancer stage model parses this as “pT2”, “N0”,  and “Stage IB”. Normalization makes that finding structured, coded, and linked to the right diagnosis, so it can be queried alongside the rest of the electronic health record (EHR).

Importance

An extracted value is still just a string. To aggregate stage across hundreds of thousands of patients, compare results across studies, or share data across systems, it must be represented consistently. That means more than a code for “Stage IB.” A stage means something only in context: which cancer it belongs to, whether it is clinical or pathological, which staging system was used (for example, AJCC), and how T, N, and M relate to the overall stage. If those links are lost, the data can be misleading.

Approach

We normalized in two layers.

Syntactic normalization: We modeled staging in the Truveta Data Model (TDM), which is based on HL7 FHIR and OMOP, using a structure informed by mCODE. Overall stage and each T, N, and M value are stored independently but linked: the overall stage connects to the patient’s cancer condition, and each T, N, and M component connects back to its overall stage. The full meaning of the staging concept is preserved.

Semantic normalization: We mapped extracted values to SNOMED CT, choosing the most specific concept the text supports, including staging system and type (pathological or clinical) when they were documented.

Scale

We applied this approach to 2,468,654 staging records from 211,884 patients and 1,943,794 notes, averaging about 11.7 staging records and 9.2 notes per patient. These averages suggest an individual patient’s journey is captured across encounters. The records mapped to 3,809 unique condition concepts and 410 staging values, including 168 overall stage and 242 T, N, and M values, illustrating the semantic scale that must be reconciled when normalizing cancer staging information at scale.

Challenges

Missing data is a challenge for every project working with clinical data. We were true to what was documented and did not impute or infer any information; in cases where there was no overall stage, we preserved the link between the condition and T, N, and M values by creating an overall stage record with the value ‘Not recorded’.

Additionally, various clinical note types contain different levels of specificity for the same concept. The stage type and method were not always indicated. Given that each T, N & M category concept in SNOMED CT is associated with either clinical or pathological type, we assumed clinical unless otherwise specified.

We aligned with syntactic and semantic standards as much as possible, but found gaps in both. Large sources of real-world data need to participate in standards development to create standards that reflect the reality of clinical data and not just the ideal.

An extremely long tail of values was extracted for condition, overall stage, and other attributes, making it impossible to semantically normalize 100% of the data. We focused on concepts with high patient and record counts to provide the most utility up front, and are working to normalize the remaining concepts over time.

What’s next

Staging is the first variable in what we’re building. We’re applying the same approach to metastasis, tumor grade, tumor markers, treatment information, and response to treatment, so researchers have a complete, standards-based set of oncology variables.

Team

This work was made possible through close collaboration across clinical, AI, and engineering teams. Clinical experts provided the context needed to define and interpret the information, AI enabled consistent identification at scale, and engineering turned the approach into something that could be operationalized in the real world.

No single discipline could have achieved this alone. We are proud of what this team has accomplished and excited about how this work can further our mission of Saving Lives with Data.

Read the research

For our full methods, an end-to-end example of a fully normalized staging record, and counts of records and SNOMED CT concepts by staging attribute, read our AMIA 2026 research, Syntactic and semantic normalization of 2.5M cancer staging records.