Getting your cellar ready to import
A quick tidy-up before upload saves time on the other side — fewer skipped rows, fewer manual fixes.
Before you start
- CSV upload is only available for empty collections.
- Max 1,500 rows, max 5 MB file size.
- If your data is in a spreadsheet, save it as
.csvfirst — see the Google Sheets or Excel export guides.
Headers and rows
- Row 1 holds your column headers, nothing else. Delete any title rows, merged banners, or blank padding above your data.
- Row 2 onwards is your data — one wine per row. If you have 6 bottles of the same wine, set Quantity to 6 rather than creating 6 rows.
- Header names don't need to be exact. Common variations are auto-detected — "Wine", "Wine Name", and "Bottle" all map to Name; "Year" maps to Vintage.
- Extra columns are fine. Anything the importer doesn't recognise can be appended to Notes on import, or archived untouched.
Required columns
Only two columns are mandatory. Rows with an invalid Name or Vintage are skipped.
| Column | Format | Notes |
|---|---|---|
| Name | Text, up to 255 chars | e.g. "Château Margaux" |
| Vintage | 4-digit year, or "NV" | Use NV for non-vintage wines |
Optional columns
Include what you have, skip what you don't. If an optional field fails validation (e.g. a rating of 15/10), we import the wine and drop just that field.
Wine details
| Column | Format | Notes |
|---|---|---|
| Region | Text, up to 100 chars | Appellation, sub-region — whatever you use |
| Type | Red, White, Rosé, Sparkling, Fortified, Dessert | Capitalisation doesn't matter |
| Country | Text, up to 100 chars | Country of origin |
| Producer | Text, up to 255 chars | Estate or winemaker |
Cellar
| Column | Format | Notes |
|---|---|---|
| Quantity | Whole number ≥ 0 | Bottles currently held |
| Bottles Opened | Whole number ≥ 0 | Must be ≤ Quantity. Imported as historic opened bottles |
Drinking window
| Column | Format | Notes |
|---|---|---|
| Drink From | 4-digit year | Earliest year you'd open it |
| Drink To | 4-digit year | Latest year before it's past its best |
If you don't provide one, we'll estimate it after import.
Purchase
| Column | Format | Notes |
|---|---|---|
| Purchase Price | Number, decimals allowed | In your profile currency |
| Purchase Date | Text, up to 10 chars | Typically YYYY-MM-DD |
| Retailer | Text, up to 255 chars | Where you bought it |
Your take
| Column | Format | Notes |
|---|---|---|
| Rating | 0–10, decimals allowed | Applied to imported opened bottles |
| Notes | Text, up to 2,000 chars | Free-form |
Common issues
Rows being skipped
Usually caused by an invalid Vintage ("next year", "2020s") or a missing Name. After import you'll see the skipped rows listed with reasons so you can fix and re-add them manually.
Cells prefixed with an apostrophe
Cells starting with =, +, -, @, tab, or carriage return are prefixed with ' during import — this is a safety feature.
Exporting from another wine app
Vivino, CellarTracker, and Wine-Searcher exports work directly
Next: import your file
With your spreadsheet tidy and saved as a .csv, read Importing your cellar to see what happens when you upload. Or sign up and upload.