Why formatted prices break imports
When users fill out a spreadsheet or form, they often enter prices with currency formatting: $1,299.99, €450.50, or similar. While this looks nice to humans, it creates problems when you try to import the data.
Database imports fail
Most systems expect numeric values. Data like '$99.99' gets rejected, and your import fails completely.
Calculations don't work
You can't do math on text strings. Totals, taxes, discounts all break when prices include symbols.
Data cleaning becomes tedious
Someone has to manually fix the data before it can be imported. This means delays and errors.
Regional formats confuse parsers
$1,299.99 or €1.200,50 or £1,299.99—different regions use different symbols and separators.
The problem in action:
What users enter
$1,299.99 €450.50 £12.00
What you actually need
1299.99 450.50 12.00
The solution: Design your data collection so prices come in as clean numbers from the start. No symbols. No formatting. Just numbers.
Best practices for price collection
The key is preventing the problem at the source. Tell users exactly what you want, make it easy to enter, and validate before accepting the data.
Label clearly: 'Amount (numbers only)'
Tell users to enter just the number. 1299.99, not $1,299.99. Be explicit.
Show an example
Display exactly what format you want. Users copy what they see. Example: 'Example: 99.99 or 1299.99'
Use numeric input fields in forms
If you're using a web form (not a spreadsheet), use type='number' to prevent text entry.
Set column format in Excel as 'Number'
Format price columns as Number (2 decimal places, no thousands separator). A CSV is saved as the cells are displayed, so this is what keeps the file to plain numbers.
Add validation rules
Reject entries with symbols, commas, or currency signs. Only accept numbers and decimal points.
Show currency in labels, not in data
The label says 'Price (USD)' but the field just contains the number. Currency is context, not data.
Setting up an Excel price column
If you're collecting prices via Excel, prepare the column so users enter clean data without thinking about it.
Step-by-step setup:
- 1Select your price column (e.g., column C)
- 2Right-click and choose 'Format Cells'
- 3Go to the 'Number' tab
- 4Select 'Number' category (not Currency)
- 5Set Decimal places to 2
- 6Untick 'Use 1000 Separator (,)'
- 7Click OK
If someone types $99.99, Excel stores the number 99.99 but may switch that cell to a currency format. Before saving as CSV, select the whole column and apply the Number format again, so every cell is written as a plain number.
Column will display: 1299.99
Never: $1,299.99
Add an instruction next to the column:
Put a note above the table or a comment on the header: "Numbers only, e.g. 99.99"
Keep the header itself as the name your import expects, so the column still maps when you import the file.
Add validation to enforce clean data
The best prevention is to validate data before accepting it. Reject entries that aren't numbers.
Excel Data Validation rule:
- 1Select your price column
- 2Go to Data → Data Validation
- 3Under Allow, choose 'Decimal'
- 4Set 'between' and enter minimum 0 and maximum 999999
- 5Click the 'Error Alert' tab
- 6Set Title: 'Invalid price format'
- 7Set Message: 'Enter price as a number (e.g., 99.99). Do not include $, €, or commas.'
- 8Click OK
Now anything Excel can't read as a number, such as 99.99 USD or about 100, is rejected with your error message. A typed $99.99 is read as the number 99.99 and accepted, which is fine as long as the column is formatted as Number when you save.
Using Import Builder for price fields
Import Builder makes price collection effortless. You define the field as a number, set validation rules, and users get real-time feedback as they enter data.
Price field configuration:
- Set field type to Number
- Set decimal places to 2
- Mark as Required if needed
- Add label: "Price (USD)"
What Import Builder does:
- • Rejects any value that isn't a valid number
- • Provides real-time feedback to users (red cell, disabled export button)
- • Prevents imports if any price is invalid
- • Cleans whitespace automatically
- • Shows clear error messages
Quick checklist
Collect clean data from the start
Import Builder lets you design forms that guide users to enter clean, validated data. No symbols, no cleanup, no import failures.
Start building free