Import & Backup

Import Coffee Data and Restore Backups

The Import & Backup feature allows you to export all your Beanstats data to a JSON file and import it on another device. This enables device migration, data sharing, and manual backups.

Overview

The backup system provides:

  • Full data export: Beans, brews, methods, equipment, freeze entries, water profiles, and roasters
  • Selective import: Choose what data types to import
  • Duplicate detection: Skip items that already exist (by UUID)
  • Relationship preservation: Maintains links between brews, beans, methods, and equipment

Creating a Backup

Access

Navigate to Settings > Data > Export > Full Backup

Large backups keep the interface responsive while the file is prepared. If the export fails, an error message tells you so.

Export Options

OptionDefaultDescription
Include Flow DataYesInclude weight samples from scale-connected brews
Include ImagesNoInclude photos (significantly increases file size)
Include ArchivedYesInclude archived beans, methods, and equipment

Preset Configurations

  • Standard: Flow data yes, images no, archived yes
  • Full: Everything included (largest file size)
  • Minimal: No flow data, no images, no archived items (smallest file size)

Restoring a Backup

Access

Navigate to Settings > Data > Import > Beanstats Backup

Preview

After you choose a file, Beanstats shows a preview with the record counts, the export date, and the device the backup came from. Review the contents and the options below, then tap Import. Choose Another File lets you change the selection. Unreadable files and unsupported backup versions show an error before anything is imported.

Import Options

OptionDefaultDescription
Skip DuplicatesYesSkip items that already exist by UUID
Import BeansYesImport coffee beans
Import Home BrewsYesImport home brews
Import Cafe BrewsYesImport cafe brews
Import Brew MethodsYesImport brew methods
Import EquipmentYesImport equipment
Import Freeze EntriesYesImport freeze entries
Import Water ProfilesYesImport water profiles
Skip ArchivedNoSkip archived items

Roasters are restored when Import Beans is enabled and matched by name. Older backups without roaster records are linked using the beans’ roaster names.

Import Order

Data is imported in dependency order to ensure relationships can be resolved:

  1. Equipment and water profiles
  2. Brew methods and their linked equipment and water profiles
  3. Roasters, then beans with varieties
  4. Freeze entries linked to beans
  5. Home brews linked to beans, methods, equipment, and water profiles
  6. Cafe brews

After import, bean weights are recalculated from linked brews and freeze entries.

Importing from Beanconqueror

  1. Export your data from Beanconqueror and unzip the export
  2. Open Settings > Data > Import > Beanconqueror
  3. Choose the data types and import behaviour
  4. Tap Start Import and select the unzipped export folder
  5. Review the results

The importer handles beans, brews, grinders, and preparation equipment mapped to brew methods. Freeze history preserves the source’s thaw dates for freshness calculations. The Beanconqueror screen also provides tools to fix a previous import.

Duplicate Detection

Items are matched by their unique identifier (UUID):

  • If an item with the same UUID exists, it’s skipped (when Skip Duplicates is enabled)
  • The existing item is used for relationship linking
  • This allows safe re-import of the same backup

Use Cases

Device Migration

  1. Create a backup on your old device
  2. Transfer the JSON file to your new device (AirDrop, Files, email)
  3. If iCloud already restores your library, a manual import may be unnecessary. When importing, keep Skip Duplicates enabled

Manual Backup

  1. Create periodic backups
  2. Store JSON files in a secure location (iCloud Drive, Dropbox, etc.)
  3. Restore if data is ever lost

Sharing Data

  1. Create a backup with your desired options
  2. Share the JSON file with another user
  3. They import it into their Beanstats

Data Format

Backups contain metadata and arrays for beans, homeBrews, cafeBrews, brewMethods, equipment, freezeEntries, waterProfiles, and roasters. Metadata records the export time, app and backup versions, and item counts.

Water profile and roaster arrays are optional for compatibility with older backups. Relationships use identifiers so imported brews can reconnect to their beans, methods, and equipment.

Notes

Image Handling

Images are stored as base64-encoded strings when Include Images is enabled. This can significantly increase file size:

  • A typical 1MB image becomes ~1.33MB in base64
  • Consider disabling images for large backups

Weight Samples

Flow data (weight samples from scale-connected brews) can add significant data:

  • A 30-second brew at 10Hz generates ~300 samples
  • Consider the Minimal preset if file size is a concern

Other Included Data

Full backups also preserve recipe steps and brew recipe snapshots. Pressure samples are included with flow data when recorded.

What’s NOT Backed Up

App preferences, paired Bluetooth devices, and webhook endpoint settings are not included in this data backup.

Certain computed values are recalculated after import:

  • Used weight (recalculated from brews)
  • Frozen weight (recalculated from freeze entries)
This backup feature exports your full Beanstats data. For simpler brew-only exports, see Export.