Skip to content
← Developer Tools
๐Ÿ”’All processing in your browser ๐ŸšซNo uploads stored ๐Ÿ›ก๏ธPrivacy-first conversion tools โœ“No login required

DBF to CSV Converter

Stuck with a .dbf file from a dBase, FoxPro, or Clipper application โ€” or pulled from an ESRI shapefile โ€” and need the data in something your spreadsheet or pipeline can actually read? This tool parses the binary DBF format and exports a clean .csv file entirely in your browser, with no uploads and no server involved.

dBase / FoxPro DBF File
๐Ÿ“Š
Drop a .dbf file here, or Supports dBase III, IV, FoxPro, and Visual FoxPro .dbf files up to 200 MB
โ›” Wrong file type โ€” only .dbf files are supported. You dropped a file.
Errors
Warnings
    โœ“ Conversion Ready
    Field Definitions

    Common Use Cases

    Example Conversion

    Input: parcels.dbf โ€” an ESRI shapefile attribute table with 14 columns (PARCEL_ID, OWNER, ADDRESS, ZONING, ACRES, ASSESSED_V, YEAR_BUILT, and 7 more), 22,400 records, encoded in CP1252 (Windows Latin-1), exported from ArcGIS 10.3.

    Output: parcels.csv โ€” a UTF-8 encoded comma-separated file with a header row using the original field names and all 22,400 data rows. Numeric fields like ACRES and ASSESSED_V are written as plain numbers; date fields like YEAR_BUILT are written in YYYYMMDD format as stored in the DBF.

    The most likely confusion point in this conversion is character encoding. DBF files rarely declare their encoding explicitly โ€” older dBase III and FoxPro files typically use DOS code pages (CP437 or CP850), while files created on Windows tools use CP1252. This tool reads the header's language driver byte where present, but many files omit it. If field values containing accented characters or special symbols appear garbled in your CSV, the original file used a DOS code page; the practical fix is to open the CSV in Excel and specify the encoding manually during import, or to use an encoding converter to re-encode the output.

    A second subtle issue: DBF field names are capped at 10 characters. A column that was ASSESSED_VALUE in the source application becomes ASSESSED_VA in the DBF and in the resulting CSV header. If you're joining this CSV to another dataset by column name, check truncated headers carefully before assuming a mismatch.

    About This Tool

    The DBF to CSV Converter parses the binary DBF file format in your browser using JavaScript ArrayBuffer and DataView APIs โ€” no server, no library download, no proprietary reader required. It reads the file header to discover the record count, field definitions, and data offset, then walks each record and serialises the values to RFC 4180-compliant CSV.

    The tool supports DBF versions 0x03 (dBase III Plus), 0x04 (dBase IV), 0x05 (dBase V), 0x83 (dBase III with memo), 0xF5 (FoxPro with memo), and 0x30/0x31 (Visual FoxPro). Field types C (Character), N (Numeric), F (Float), D (Date), L (Logical), and M (Memo) are all handled. Deleted records โ€” those marked with a 0x2A deletion flag โ€” are skipped and reported in the warnings panel.

    CSV is the right output format here because it opens in every spreadsheet, database importer, and scripting environment without a driver. DBF, by contrast, requires either a legacy runtime or a specialised reader. That said, if your end target is a columnar analytics store, consider converting the resulting CSV to Parquet afterward โ€” Parquet will be significantly smaller and faster to query on large datasets.

    This tool is particularly useful for GIS practitioners who need the .dbf attribute table from a shapefile without loading the geometry, and for anyone maintaining data from Borland Delphi, Clipper, or ACCPAC applications that are no longer in production.

    How It Works

    1
    Drop or browse your .dbf fileSelect any .dbf file from a dBase, FoxPro, Clipper, or ESRI shapefile export. The file is read into an ArrayBuffer locally โ€” nothing is sent to a server at any point.
    2
    Click Convert to CSVThe parser reads the 32-byte file header to confirm the DBF version, record count, header size, and record size. It then reads each 32-byte field descriptor โ€” name, type (C/N/D/L/M/F), and length โ€” building the column layout. Finally it walks all data records, skipping deleted rows, and trims trailing whitespace from character fields (DBF pads all fields to fixed width with spaces).
    3
    Download the CSVStats show the row count, column count, deleted record count, and file size. A 5-row preview renders in the panel. Click Download CSV to save the converted file โ€” named after your original DBF โ€” to your device.

    DBF vs CSV: Which Format and When

    DBF is a binary, fixed-width, self-describing format โ€” it stores field names, types, and lengths in the file header, meaning a reader doesn't need any external schema. That structure made it ideal for embedded database applications in the 1980s and 1990s. CSV is a plain-text, delimited format with no built-in type information โ€” every value is a string until the consuming application interprets it.

    In practice, DBF wins on nothing in a modern workflow. No major database, spreadsheet, or analytics tool opens DBF natively in 2026 without a plugin or ODBC driver, while every tool on the planet reads CSV. The only reason to stay in DBF is if you're actively writing back to an application that requires it โ€” if you're only reading the data, CSV is unambiguously the right extraction target.

    The one real loss in conversion is type metadata: a DBF N field with 2 decimal places becomes a string like 123.45 in CSV, and downstream tools must re-infer that it is numeric. For most use cases this is a non-issue, but if you are loading the CSV into a typed database, define the schema explicitly rather than relying on automatic type inference โ€” especially for numeric fields that could look like integers in some rows.

    Limitations

    ๐Ÿ”’ Privacy & Security

    All processing is performed locally using the Web File API and JavaScript ArrayBuffer. Your file is never sent to a server โ€” suitable for sensitive or private content including HR records, financial tables, or regulated data exports.