Skip to main contentThe Local Bench

Use case 4 of 13

Receipt and paperwork scanning

Photograph receipts and letters, get searchable text, titles and tags, and keep the archive on your own disk.

A fan of paper receipts held by a blue clip next to a small black mini PC
Image: generated with Grok Imagine

The real example

paperless-ngx with paperless-gpt

paperless-ngx is a widely used self-hosted document archive. The paperless-gpt add-on uses a language or vision model (local via Ollama, or a hosted service) to improve OCR on hard scans, generate titles and tags, and link related documents, such as a reminder to the invoice it cites. It also supports self-hosted Docling conversion. On olmOCR-Bench, a public benchmark of 7,000+ test cases across 1,400 documents, Ai2's olmOCR 2 scores 82.4 and PaddleOCR-VL 80.0, both models you can run at home.

Sources: paperless-ngx on GitHub · paperless-gpt on GitHub · olmOCR-Bench results and requirements (allenai/olmocr)

Why run it locally

Receipts and letters carry names, addresses, account numbers and medical details. A scanner and a GPU at home beat uploading them.

Recommended stack

Three tiers built from our builds. Weights-in-memory is our arithmetic (parameters × bits), checked against each device's usable memory; it excludes KV cache and runtime overhead. Runtime compatibility is not validated.

Budget

Silent home server

$1,283Sample

16 GB on GeForce RTX 4060 Ti 16 GB

Weights ≈ 6.9 GB of 15.5 GB usableEstimate

Excludes KV cache and runtime overhead. Runtime compatibility is not validated.

A sub-1B document parser and an 8B tagger run comfortably on 16 GB.

Runtime: paperless-ngx + paperless-gpt + Ollama

Mid

Used-3090 24 GB

$1,980Sample

24 GB on GeForce RTX 3090 24 GB (used)

Weights ≈ 14.0 GB of 23.5 GB usableEstimate

Excludes KV cache and runtime overhead. Runtime compatibility is not validated.

The olmOCR toolkit asks for a recent NVIDIA GPU with at least 12 GB.

Runtime: paperless-ngx + olmOCR pipeline (vLLM)

Pro

Dual-GPU 48 GB

$4,044Sample

48 GB on 2× RTX 3090 (used) 48 GB

Weights ≈ 23.9 GB of 47.0 GB usableEstimate

Excludes KV cache and runtime overhead. Runtime compatibility is not validated.

Batch-convert a decade of paperwork overnight, with a VLM to check tricky pages.

Runtime: olmOCR + vLLM

Setup outline

  1. Run paperless-ngx with Docker Compose and point a scanner or phone upload at its consume folder.
  2. Add paperless-gpt, choose the LLM OCR provider, and point it at your local Ollama endpoint.
  3. Pick a vision-capable model for OCR and a text model for titles and tags. Test on 20 of your worst scans.
  4. Set rules for which documents get AI processing, and keep originals.

Limits

  • Handwriting, faded thermal paper and multi-column layouts still fail sometimes. Spot-check totals before you file taxes with them.
  • olmOCR-Bench measures PDF-to-text quality, not receipt field extraction specifically.
  • Language models can produce plausible but wrong text. Keep the original image linked to every record.

Next: Search your photo library by description

Build prices come from our build datasheets: GPUs and devices are sourced retail or sold prices; other parts are sample prices until sourced, and the flag on each total says which. Model links go to our datasheets, where each parameter count and licence was checked against the Hugging Face API.