numbered
Health system or imaging group
← Back to Agent Library

Radiology Report Structuring Agent

Turns a free-text radiology report into structured findings the moment it's finalized, ready for coding and analytics.

Who it's for
Radiology and coding teams working from free-text reports today.
What it replaces
Manual report review for coding and analytics after the radiologist signs off.
<div class="hx-demo-box" style="margin-top:40px;border:1px solid #2A2E27;border-radius:12px;overflow:hidden;background:#1A1D18;box-shadow:0 12px 32px -12px rgba(23,25,21,.3)"><div style="padding:12px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2A2E27"><div style="display:flex;align-items:center;gap:10px"><span style="width:22px;height:22px;border-radius:6px;background:#D7F154;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#1A1D12">hx</span><span style="font-size:13px;color:#EDEFE8;font-weight:600">CT Chest w/ contrast &middot; study #8842</span></div><span style="font-size:12px;color:#A9B1A4">{{ stageLabel }}</span></div><div style="padding:20px 24px;font-family:ui-monospace,monospace;font-size:13px;line-height:1.9;color:#C9CFC4"> FINDINGS: <span style="border-radius:3px;padding:0 3px;color:#1A1D12;animation:highlight 1s ease .4s both">8mm nodule right upper lobe, unchanged</span>. No pleural effusion. Mild coronary calcification.<br/> IMPRESSION: <span style="border-radius:3px;padding:0 3px;color:#1A1D12;animation:highlight 1s ease 1.8s both">Stable pulmonary nodule</span>, <span style="border-radius:3px;padding:0 3px;color:#1A1D12;animation:highlight 1s ease 3.2s both">recommend follow-up CT in 12 months</span>. </div><div style="background:#F3F4F0;padding:16px 24px;display:flex;flex-direction:column;gap:6px"><sc-if value="{{ f1 }}"><div style="display:flex;justify-content:space-between;padding:8px 10px;background:#fff;border-radius:6px;font-size:13px;animation:fadeUp .3s ease both"><span style="color:#8B9086">Finding</span><span style="font-weight:600">Pulmonary nodule, 8mm, RUL</span></div></sc-if><sc-if value="{{ f2 }}"><div style="display:flex;justify-content:space-between;padding:8px 10px;background:#fff;border-radius:6px;font-size:13px;animation:fadeUp .3s ease both"><span style="color:#8B9086">Status</span><span style="font-weight:600">Stable, unchanged</span></div></sc-if><sc-if value="{{ f3 }}"><div style="display:flex;justify-content:space-between;padding:8px 10px;background:#EAF6C9;border-radius:6px;font-size:13px;animation:fadeUp .3s ease both"><span style="color:#3E4A1B">Mapped code</span><span style="font-weight:600;color:#3E4A1B">CPT 71260</span></div></sc-if></div></div>
window.HX_DEMOS=window.HX_DEMOS||{}; window.HX_DEMOS["rad"]=function(Base){ const CYCLE_SEC=8; class Comp_rad extends Base { state={t:0,name:'',email:'',org:'',formSubmitted:false}; componentDidMount(){ this._start=Date.now(); this._iv=setInterval(()=>{ if((Date.now()-this._start)/1000>=CYCLE_SEC){clearInterval(this._iv);return;} const t=((Date.now()-this._start)/1000)%CYCLE_SEC; this.setState({t}); },150); } componentWillUnmount(){clearInterval(this._iv);} onName=(e)=>this.setState({name:e.currentTarget.value}); onEmail=(e)=>this.setState({email:e.currentTarget.value}); onOrg=(e)=>this.setState({org:e.currentTarget.value}); submit=()=>this.setState({formSubmitted:true}); renderVals(){ const t=this.state.t; return {stageLabel:t<4.5?'Structuring...':'Structured',f1:t>=1.2,f2:t>=2.6,f3:t>=4, name:this.state.name,onName:this.onName,email:this.state.email,onEmail:this.onEmail,org:this.state.org,onOrg:this.onOrg,submit:this.submit, formOpen:!this.state.formSubmitted,formSubmitted:this.state.formSubmitted,nameSuffix:this.state.name?', '+this.state.name.split(' ')[0]:''}; } } return Comp_rad; };
Structure one of your own reports →
Free to start. No credit card.

How the Radiology Report Structuring Agent works

1
Reads the report
Reads the report
Pulls the free-text radiology report as it's finalized in the reporting system.
2
Extracts findings
Extracts findings
Identifies structured findings, impressions, and measurements from the narrative text.
3
Maps to codes
Maps to codes
Matches findings to the relevant CPT and ICD-10 codes for billing and registries.
4
Step label
Publishes structured data
Sends the structured record to the PACS, EHR, and downstream analytics systems.
5
Step label
90 sec
to structure a report the moment it's signed
35%
fewer downstream coding queries
100%
of reports structured to the same fields

Stop re-keying findings by hand.

Start free with a batch of your real reports and see the field-level output.

Handles any radiologist's dictation style and template
Lives inside your PACS workflow, not a separate tool
Free for your first 100 reports, no credit card
Starts free
Takes about 30 seconds. No sales deck required.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.