*** September 2026 Major Release ***Read and watch
Document type

Extracting data from investor presentations

An investor presentation puts a company's numbers in their best light, and almost none sit in a table. Quarterly earnings decks, pitch decks and analyst day slides carry their substance in charts and footnotes, each designed by its issuer. Equity analysts and diligence teams pull hundreds each reporting season from investor relations sites.

An analyst needs the reported figures, the segment breakdowns and the one-off adjustments buried in footnotes. Those feed comparison models and diligence memos, where a pension settlement gain counted as recurring revenue changes the valuation.

Page 20 of a sample Investor presentation, with extracted values outlined
96,786Markdown characters
942parse blocks
49fields extracted
The problem

What makes investor presentations hard

The numbers live in charts

A revenue figure may exist only as a labelled bar or a pie slice. Read the slide as text and the number loses its category.

Several stories per slide

One slide carries a headline, overview bullets, two or three charts and a block of footnotes. What to read first is a layout question.

Footnotes redefine the headline

A one-off gain is disclosed in six-point type at the foot of the slide, qualifying the headline figure printed above it.

How it works

Parse, extract, verify

1

Parse

Parse turns the document into reading-order Markdown and a hierarchy of blocks (text, tables, figures), and grounds each block to its exact location on the page.

2

Extract

You define the fields in a JSON schema, and Extract returns their values in a consistent, structured format, each linked back to where it appears in the Markdown.

3

Verify

Each value links back to where it appears, down to the character range in the Markdown, and the page and bounding box in the source document, so every result can be verified.

Worked example

One investor presentation, end to end

About this document: A quarterly investor deck from Park National Corporation, 43 landscape pages published for general distribution. Slide 20 is titled "Diverse Fee Income". It carries overview bullets, a stacked bar chart, a pie chart and a block of footnotes. The figures that matter show up across all four regions of the slide.

Processing objective: The objective is to assemble the fee income story from slide 20: a ratio stated in prose and again on a bar chart, the largest income source read off a pie chart, and a one-off gain disclosed in a footnote. None of the four regions is a table.

Demonstration fields: Non-interest income ratio (bullet), Non-interest income ratio (chart), Largest income source, Pension settlement gain

The document

4 of 43 pages
  • Page 1 of the sample Investor presentationPage 1
  • Page 15 of the sample Investor presentationPage 15
  • Page 20 of the sample Investor presentationPage 20shown below
  • Page 28 of the sample Investor presentationPage 28

Where each value came from

Page 20 of the sample Investor presentation, with every featured field outlined
Non-interest income ratio (bullet)fee_income.non_interest_income_to_operating_revenue_ratio
21.5%
The region of the sample Investor presentation containing Non-interest income ratio (bullet), with the extracted value outlined
extraction_metadata["fee_income.non_interest_income_to_operating_revenue_ratio"]
{
  "value": "21.5%",
  "page": 20,
  "range": {
    "end": 46281,
    "start": 46230
  },
  "box": {
    "xmin": 0.05854,
    "ymin": 0.37082,
    "xmax": 0.46554,
    "ymax": 0.39617
  }
}
Non-interest income ratio (chart)fee_income.non_interest_income_to_operating_revenue_ratio
21.5%
The region of the sample Investor presentation containing Non-interest income ratio (chart), with the extracted value outlined
extraction_metadata["fee_income.non_interest_income_to_operating_revenue_ratio"]
{
  "value": "21.5%",
  "page": 20,
  "range": {
    "end": 48094,
    "start": 48089
  },
  "box": {
    "xmin": 0.5362,
    "ymin": 0.19405,
    "xmax": 0.94471,
    "ymax": 0.55114
  }
}
Largest income sourcefee_income.income_sources[0].source
Fiduciary Activities
The region of the sample Investor presentation containing Largest income source, with the extracted value outlined
extraction_metadata["fee_income.income_sources[0].source"]
{
  "value": "Fiduciary Activities",
  "page": 20,
  "range": {
    "end": 48269,
    "start": 48249
  },
  "box": {
    "xmin": 0.53714,
    "ymin": 0.5555,
    "xmax": 0.94452,
    "ymax": 0.94042
  }
}
Pension settlement gainfee_income.pension_settlement_gain
$6.1MM
The region of the sample Investor presentation containing Pension settlement gain, with the extracted value outlined
extraction_metadata["fee_income.pension_settlement_gain"]
{
  "value": "$6.1MM",
  "page": 20,
  "range": {
    "end": 46940,
    "start": 46843
  },
  "box": {
    "xmin": 0.03598,
    "ymin": 0.90942,
    "xmax": 0.54876,
    "ymax": 0.92727
  }
}

How to try it yourself

Everything on this page is reproducible. The sample, its schema, and the Parse and Extract API outputs are published. You can repeat the same two calls from whichever surface you already build on.

  • Claude Skilldescribe the job; the agent writes it
  • CLIno code at all
  • MCPexpose ADE docs as an agent tool
  • REST APIany language
  • Pythonlandingai-ade
  • TypeScriptlandingai-ade
Why LandingAI?

Documents into data

Accurate

The best accuracy on the difficult documents other tools get wrong, such as messy scans, complicated tables, checkboxes and handwriting.

Auditable

Every answer cites its sources. Values come back with an audit trail (page, bounding box, character range) so a human can review them.

Agentic

Applies multi-step reasoning, and plans before it acts. Handles documents it has never seen before and adapts to variations.

API-first

Composable APIs that drop into any tech stack and can be called from anywhere. Easy to build on and embed in your pipelines and products.

Affordable

Cost-competitive rates with complete price transparency. Spend controls before you run, and every job reports its exact cost.

Enterprise-grade

Built for production and scale from day one. Fully observable and monitored, running securely in our cloud or yours.

Built for high-volume, high-throughput production

  • Zero data retention
  • Priority rate limits
  • Enhanced support
  • VPC and on-prem deployment

Available on Team and Enterprise plans.

Compare plans
Capabilities

Investor Presentation processing highlights

Bar, line and pie charts
Chart data transcribed to tables
Landscape and portrait pages
Reading order across columns
Footnotes and disclosures
Dense mixed-content slides
Tables inside slides
Logos and figure captions
Grounding on chart elements
Synthesised values flagged
Any issuer, any design
Decks of 100+ slides
FAQs

Questions, answered

Yes. Charts are parsed as structured figures with their data transcribed, so a labelled bar or a pie slice comes back as a value you can use, with the category it belongs to.

Usually. A value read from a labelled chart element grounds to that element. A value the model derived from the chart as a whole can come back without grounding. That shows up in the output, so you are never guessing about which you have.

No. Page orientation is handled during parsing and grounding coordinates are normalized to the page, so the same code path serves portrait documents and landscape slides.

Yes. Parsing returns Markdown for the whole document, with charts as structured figure elements and their data transcribed as tables. That output is the input to extraction, and on a deck it is worth reading directly.

Start extracting investor presentation data

Reliable, structured outputs with full traceability in minutes