Interfaze

logo

we're hiring

pricing

help

docs

blog

sign in

Backed byY CombinatorCombinator

Interfaze vs Reducto

The whole OCR pipeline in one API call.

One API call does OCR, classification and translation, and returns structured JSON. Every response also includes the OCR underneath, with bounding boxes and a confidence score for each word.

Build now ->

Trusted by builders at

NVIDIA
IBM
Vercel
Supabase
Notion
Zapier
Robinhood
Airwallex
Langflow
Smithery
Rho
Pocket
101 GenAI
Aegis
RMH
INTH
Andco

Why teams choose Interfaze over Reducto

Bounding boxes and confidence scores you can check, the whole pipeline in one call, better reads on hard scans, and a smaller bill.

INVOICE

NO.

INV-20418

DATE

2026-09-03

1,200.00

3,620.50

TOTAL

$4,820.50

total_due

0.98

01

Data you can verify

Every response comes with bounding boxes and a confidence score for each word, so you can check any value against the page and flag the uncertain ones.

.pdf
.jpg
.mp3
URL

02

The whole pipeline in one call

Parse, classify and translate in a single request. No extra APIs to wire up and no glue code to maintain.

LINE ITEMS

ITEM

QTY

AMOUNT

Valve, 2in

12

1,104.00

Gasket kit

40

386.40

Labour, site

6h

720.00

TOTAL

2,210.40

Net 30. 1.5% monthly on overdue balances. Prices exclude VAT at the prevailing rate.

03

Better on hard-to-read scans

On our hand-checked test set, interfaze-1 read more rotated, upside-down and faint text correctly than Reducto r-1, and its confidence scores caught every wrong answer.

Multi-step pipeline

parse
classify
translate

Interfaze

one call, one bill

04

Cheaper per request

One request covers the whole pipeline. On our test documents, Reducto cost about 30% more on average.

Interfaze vs Reducto on the same document

Same pages and same fields, sent to both APIs. These are pages where interfaze-1 got more fields right. Pick one to see where each API placed its fields, or the JSON it returned.

Rotated table scan

Dark cover scan

Faint campaign form

Boxes on the page

Returned JSON

correct value and box

wrong value, broken text or bad box

Interfaze · interfaze-1

Reducto · r-1

Interfazeinterfaze-1

structured JSON

✓

usa_total_byproducts

25.6

0.99

✓

germany_light_recon

22.3

0.99

✓

venezuela_bandcast

18.2

0.97

✓

average_europe_total_recon

22.7

0.99

✓

malaysia2_light_recon

17.2

0.99

✓

finland_total_recon

25.0

0.98

✓

side_number

597004904

0.99

Reductor-1

structured JSON

✗

germany_light_recon

22.3

Right value, but the box is on the Switzerland row.

0.95

✗

venezuela_bandcast

18.2

Right value, but the box is on the 18.2 in the Total Recon column.

0.99

✗

malaysia2_light_recon

17.2

Right value, but the box is on the 17.2 in the Total Recon column.

0.99

✗

side_number

597004905 · page says 597004904

0.86

✓

usa_total_byproducts

25.6

0.99

✓

average_europe_total_recon

22.7

0.99

✓

finland_total_recon

25.0

0.99

One API call instead of a pipeline

OCR docs ->

Both take a few seconds per page. With Interfaze you drop the extra APIs and the code that stitches them together.

Global documents

Claims intake

Interfaze vs Reducto accuracy benchmarks

Where interfaze-1 beats Reducto r-1 on the same documents, checked by hand: confidence scores you can act on, boxes on the right cell, and hard-to-read text.

Accuracy by content type

higher is better

Content

Interfaze

Reducto

Errors flagged by confidence

wrong answers scored below 0.9, so they reach review · 11 vs 10 errors

100.0%

20.0%

Box on the right table cell

field box on the cell the value came from · 8 table fields

87.5%

50.0%

Rotated, upside-down & faint text

upside-down pages, rotated margin numbers, faint stamps · 15 fields

73.3%

60.0%

Fine print

rotated numbers, stamps, footers, small type · 10 fields

80.0%

70.0%

Body text

names, titles, labels and running text · 24 fields

95.8%

91.7%

Method ->

Interfaze vs Reducto on olmOCR-bench

Full breakdown ->

Scores from the public olmOCR benchmark. The overall ranking first, then the three tasks with the biggest gap: math in old scans, arXiv papers and multi-column layouts.

Interfaze vs Reducto, feature by feature

Checked against both companies' docs.

Interfaze

Reducto

Structured JSON output

Your JSON schema on any input, in the same call as the OCR (OpenAI json_schema, Zod, Pydantic)

Structured JSON output

Separate Extract API, documents only, not OpenAI response_format

Multimodal input

PDF, Word, scans and images, plus call recordings (timestamps, diarization up to 50 speakers) and video on interfaze-1

Multimodal input

Documents and images only (PDF, Office, spreadsheets); no audio or video

Bounding boxes with confidence scores

Every OCR word and line with pixel bounds and a 0–1 confidence, included in every response

Bounding boxes with confidence scores

Per-field citations and word-level OCR with 0–1 confidence; OCR boxes cost extra on r-1

Open weights

interfaze-1.1-lite runs on one 80 GB GPU

Open weights

No open weights; VPC and on-prem on Enterprise only

Zero data retention

Nothing kept after the request, on any plan, with one header

Zero data retention

Growth plan and above, and data is still kept for up to 24 hours

Standard SDKs

OpenAI Chat Completions compatible: OpenAI SDK, Vercel AI SDK, LangChain

Standard SDKs

Own SDKs only (Python, Node, Go); not OpenAI-compatible

Classification and translation

Same request as the OCR

Classification and translation

Classify is a second call; no translation endpoint in the API docs

Streaming

Streams the JSON object as it is generated

Streaming

Job-based: wait for the full result or poll

Multi-document Q&A, analysis and comparison

Send several documents in one request and ask questions across them, analyse or compare them

Multi-document Q&A, analysis and comparison

One document per Parse or Extract call; no question answering across documents in the API docs

Video OCR

Send a video to interfaze-1 and read the text and fields in it, like any document

Video OCR

No video input

How to migrate from Reducto to Interfaze

OpenAI SDK guide ->

The same extraction in Interfaze and Reducto, side by side. Your existing schema works as is. Or let your coding agent make the switch.

Interfaze

OpenAI SDK

Vercel AI SDK

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.interfaze.ai/v1",
  apiKey: process.env.INTERFAZE_API_KEY,
});

const res = await client.chat.completions.create({
  model: "interfaze-1",
  response_format: {
    type: "json_schema",
    json_schema: { name: "invoice", schema: INVOICE_SCHEMA },
  },
  messages: [{
    role: "user",
    content: [
      { type: "text", text: "Extract the fields" },
      { type: "file", file: { filename: "invoice.pdf",
        file_data: pdfUrl } },
    ],
  }],
});
const invoice = JSON.parse(res.choices[0].message.content);

Reducto

import Reducto from "reductoai";
import fs from "fs";

const client = new Reducto(); // reads REDUCTO_API_KEY

// 1. Upload the file
const upload = await client.upload({
  file: fs.createReadStream("invoice.pdf"),
});

// 2. Extract fields with your schema
const run = await client.extract.run({
  input: upload.file_id,
  instructions: { schema: INVOICE_SCHEMA },
});
const invoice = run.result[0];

Interfaze vs Reducto: common questions

What people usually ask before switching from Reducto.

Send us your hardest PDF.
If we can't beat your current provider,
we'll give you $3,000 in credits.

Start for free. No credit card required.

Build now ->Talk to a founder ->

Interfaze

logo

Product

Playground

OCR

Models

Leaderboards

Pricing

OpenWebSearch

DefaultModel