> ## Documentation Index
> Fetch the complete documentation index at: https://help.csvbox.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Smart Date and Number Formats

> Automatically convert dates and numbers written in different regional formats, and ask users only when a value is unclear.

Smart Date and Number Formats convert dates and numbers written in other regional styles into the format your column expects, and ask the user only when a value could mean two different things.

## What it does

Files from different countries write the same date or number differently. `04/05/2024` is 4 May in the UK and 5 April in the US. `1,234` is one thousand two hundred thirty-four in the US and one point two three four in much of Europe. If the importer guesses wrong, valid data is rejected or, worse, imported with the wrong meaning.

With Smart Date and Number Formats, CSVbox reads the Date, Number, Currency, and Percentage columns before the user reaches the Verify Data step. Values that can be read only one way are converted into the format your column expects. When a value could mean two different things, the user is asked once how to read it. Nothing is imported until the question is answered or skipped.

## How to enable it

<Steps>
  <Step title="Open the sheet settings">
    Go to your **Sheet Settings**.
  </Step>

  <Step title="Open the Verify Data tab">
    Click the **Import Steps** tab, then navigate to the **Verify Data** tab.
  </Step>

  <Step title="Turn on date correction">
    Set **Date correction?** to **Yes**. The default value is `No`.
  </Step>

  <Step title="Save your settings">
    Save your settings.
  </Step>
</Steps>

While the setting is off, values are validated as they are, so a day-first date in a month-first column shows as invalid.

<Tip>
  To try it out, upload a file with an unclear date and an unclear number through **Test Importer**, answer the question, and check the Verify Data screen without submitting.
</Tip>

## Set the format each column expects

The feature always converts **into** the format configured on the column, so set your column types carefully under **Sheet Settings** → **Columns** → **Edit**. See [Validations](/dashboard-settings/validations) for the full list of column types.

| Column type | What you set | What you receive |
| - | - | - |
| **Date** | `Date Format`, such as `MM/DD/YYYY`, `DD/MM/YYYY`, `YYYY-MM-DD`, `DD-MMM-YYYY`, a custom format, or several formats | Every date rewritten to your format. With several formats, clear dates use the first and a picked day/month order uses the format written in that order |
| **Date with a time** | A format such as `MM/DD/YYYY HH:mm` | The date part rewritten. The time stays exactly as in the file |
| **Number** | `Allow commas` on or off | Off: plain digits with a `.` decimal (`1234.56`). On: US style with commas (`1,234.56`), which is left as written |
| **Percentage** | Nothing extra | A plain number, with the `%` kept as written (`12,5%` becomes `12.5%`) |
| **Currency** | Its own thousands and decimal separators | Values that already match are left alone |

<Tip>
  For a worldwide audience, a Number column with `Allow commas` off is the most predictable: you receive plain numbers whatever the file looked like.
</Tip>

## What happens during upload

The import flow stays the same: upload, select the header row, map columns, then Verify Data. The extra step happens right before Verify Data.

### When the file is clear

If every value can be read only one way, CSVbox converts it quietly and goes straight to Verify Data. No question is shown. Examples:

* `13/02/2024` (there is no 13th month, so it is day-first)
* `1.234,56` (this can only be European style)
* `2024-04-19` (year first)
* `1 234,56`, `12,34,567.89`
* `4 May 2026`, `May 4, 2026`, `04-May-2026` (an English month name can only mean one date)

The same happens when the clear values show that the file already uses your column's day/month order. Values written differently, such as another separator (`13.02.2024`, `13-02-2024`) or no leading zero (`5/4/2024`), are rewritten into your format, and values that are already correct are left alone.

### When a value could mean two things

The user sees a card with the column name and the two possible readings. For example:

> **How should we read dates in this column?**
>
> `12/11/2024` means:
>
> * **11/12/2024**, 12 November 2024 · DD/MM/YYYY
> * **12/11/2024**, 11 December 2024 · MM/DD/YYYY

or:

> **How should we read numbers in this column?**
>
> `1,234` means:
>
> * 1234, the comma separates thousands
> * 1.234, the comma is the decimal point

* The bold date is what will be imported, written in your sheet's own date format (here `MM/DD/YYYY`). A sheet set to `DD-MM-YYYY` offers `DD-MM-YYYY` and `MM-DD-YYYY`.
* When the rest of the file points one way, that choice is marked **suggested**.
* If several columns need a question, the user sees **1 of 2**, **2 of 2**, and a **Back** button.
* The question appears in the importer's language.

### What each answer does

* **Pick a reading**: every value in that column is rewritten into your column's format. Values that were already clear are converted as well, so the column ends up consistent.
* **Keep original**: nothing in that column is changed. Values the importer can't accept show as **Invalid** on the Verify Data screen, where the user can fix or remove them.

<Note>
  The user can't reach **Submit** while a question is open. They have to answer it or choose **Keep original**.
</Note>

On the Verify Data screen, converted columns already show the new values in your column's format, so what the user sees is what will be imported. If the default view under **Verify Data** is set to invalid rows only and the conversion fixes every value, CSVbox opens on All rows instead of an empty screen.

## Examples

| Column | File says | Result |
| - | - | - |
| Date (`MM/DD/YYYY`) | `13/02/2024`, `14/03/2024`, `12/11/2024` | No question: the first two prove day-first. All become `02/13/2024`, `03/14/2024`, `11/12/2024` |
| Date (`MM/DD/YYYY`) | `04/05/2024`, `06/07/2024` | Question, since each date could be read both ways. The answer decides |
| Date (`MM/DD/YYYY HH:mm`) | `13/02/2024 14:30` | Asked if unclear, then `02/13/2024 14:30` |
| Number (commas off) | `123,456.78`, `456,789.12` | No question. Becomes `123456.78`, `456789.12` |
| Number (commas off) | `1,234`, `2,345` | Question: thousands or decimal |
| Number (commas off) | `1.234`, `2.345` | Already valid plain decimals, so left alone |
| Number (commas on) | `123,456.78` | Already valid. Left as it is |
| Percentage | `12,5%`, `7,25%` | Becomes `12.5%`, `7.25%` |
| Percentage | `1,250%`, `2,500%` | Question: thousands or decimal, `%` kept |

## Limitations

* It doesn't guess when a value is truly unclear. It asks the user.
* It covers **Date, Number, Currency, and Percentage** columns only.
* It doesn't change the meaning of a time (no 12 to 24 hour conversion) or fix typos.
* If your `Date Format` has a time, files must include one for each date. A date written without a time is flagged as invalid.
* Only English month names are recognized.
* A cell the user edited by hand is left alone if they change an answer later.
* Values themselves are never translated.

## Troubleshooting

| What you see | Why | What to do |
| - | - | - |
| No question ever, and dates or numbers show Invalid | **Date correction?** is set to No | Set it to Yes under **Import Steps** → **Verify Data** |
| Every date is Invalid and no question appears for a column with a time | Dates in the file have no time but the format requires one | Add the time to the file, or use a date-only format |
| Verify Data is empty with "No data found" | The screen was showing a filtered view with no matches | Click **All**. Current versions open on All rows automatically when the conversion fixes every value |
| The question looks wrong for one value | The file mixes styles | Choose **Keep original** and fix the few values on Verify Data |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.