Skip to content

JPEG to CSV converter

JPG to CSV converted the photographed receipt to a small CSV, but the table columns collapsed and amount values were not usable.

  • Converted with AI Deep Read · input deleted within 24 h
  • Free: 5 conversions a day · 5 MB each
  • Higher limits →

From real runs

What you get — and what changes

  • CSV response Kept

    The API returned a valid 215-byte CSV file from the compressed receipt photo.

  • Main columns Lost

    Item, Qty, and Amount did not become separate CSV fields, so the receipt cannot be imported as a ledger without repair.

  • Item labels Kept

    The item names and subtotal labels appeared as one record each, which helps manual reconciliation.

  • Numerical amounts Lost

    Amounts from the receipt body were absent from the CSV records, including the total and both negative entries.

  • Payment note Kept

    The card authorization and reimbursement-code note survived more completely than they did in the PNG CSV run.

  • Photo artifacts Changed

    Skew and JPEG compression did not appear directly, but they likely contributed to the table parser's single-column result.

  • Runtime Kept

    The JPG-to-CSV request finished in 7.3 seconds and spent one Deep Read credit for the receipt image.

Sample conversions

Photographed receipt table

Input
JPG receipt with five item rows, quantity and amount columns, discounts in parentheses, total, and payment metadata.
Output
CSV kept labels and payment notes, but it did not keep the amount column. The same image performed better when sent to XLSX.

Simple photographed list

Input
JPG image where each line is a single field, such as a sign-in list or asset label list.
Output
A one-column CSV may be acceptable for this simpler case because each visible line maps naturally to one record.

A real JPEG → CSV run

We converted our JPEG sample (97 KB) with AI Deep Read under AI Deep Read on 2026-09-11. It took 16 s and produced a 388 B CSV file, 100% smaller than the input. The engine raised 1 warning, listed below.

Input · sample.jpg · 97 KB

1240 × 1754 px, baseline

Width
1,240
Height
1,754
Encoding
baseline

Output · sample.csv · 388 B

15 data rows × 1 column; header: Content

Rows
15
Columns
1
Header
Content
  • AI Deep Read read 1 page; 1 credit per page

First lines of the output

csv
Content
Feedback Atlas — Q3 activity trail
Prepared for: Board of Directors · 12 Sep 2026
**Headline numbers**
Metric
ARR
Net revenue retention
Support CSAT
Refunds
Content
**What went well**
• Enterprise pipeline doubled after the SOC 2 report shipped.
• Support CSAT held at 94% while ticket volume rose 31%.
• Two renewals slipped into October. Owner: VP Sales.
Signed
Signed:

Is your file a scan?

JPG-to-CSV charges 1 Deep Read credit per image and runs the OCR text through a table serializer. The receipt test shows that successful HTTP output is not the same as column-accurate extraction.

Options and when to change them

extractTablesAsGfm
Keep it on for photographed tables; CSV output depends on a pipe-table transcript before serialization.
preserveLayout
Try it when skew or blank cells make the default row interpretation collapse columns.
languageHint
Set the language for short merchant names, item labels, or table headings that OCR might split incorrectly.

Do it yourself

Tesseract + pandas 2.3

bash
tesseract receipt.jpg stdout --psm 6 > receipt.txt
python3 - <<'PY'
import pandas as pd
rows = [['Item','Qty','Amount'], ['Coupon MANAGER10','',-3.00]]
pd.DataFrame(rows[1:], columns=rows[0]).to_csv('receipt.csv', index=False)
PY

This creates CSV after you manually correct OCR rows; it is not an unattended photographed-receipt parser.

JPEG to CSV by API or MCP

The HTTP API and the MCP server run the exact engine this page uses (AI Deep Read); the response carries the same warnings the web converter shows. Check support first with GET /api/v1/pairs?from=jpg&to=csv.

curl
curl -X POST https://filetypeconverters.com/api/v1/convert \
  -H "Authorization: Bearer $FTC_API_KEY" \
  -F "file=@input.jpg" -F "from=jpg" -F "to=csv" \
  -F "deepRead=true" \
  --output output.csv
API reference

When this is the wrong conversion

  • If you need amount cells, use /convert/jpg-to-xlsx and inspect the generated workbook before exporting CSV.
  • If the photo is a note or sign rather than a table, /convert/jpg-to-txt gives a clearer transcript.
  • If the source application can export data, use that CSV instead of OCRing a camera image.

JPEG to CSV questions

Why did JPG to CSV keep labels but not amounts?

The receipt OCR produced enough text for a CSV response, but the tabular materialization collapsed the table. Amounts were not present in the final CSV records.

Is XLSX better than CSV for receipt photos?

For the tested receipt, yes. XLSX preserved numeric amount cells and normalized negative values, while CSV became a one-column draft.

Can a one-column CSV be the intended result?

It can be fine when the JPG is a list rather than a table. For ledgers, inventory, or receipts, treat one-column output as a signal to change targets.