When entering currency amounts into an input field, I've seen two methods:

Keyed Decimal: The keypad includes the decimal character and the user enters the decimal along with the numbers. The Chase mobile app uses this approach.

Key  Display
 5       $5
 4      $54
 .     $54.
 6    $54.6
 3   $54.63

Fixed Decimal: The keypad excludes the decimal character and the numbers fill around a fixed decimal. The PayPal and Square mobile apps both use this approach.

Key  Display
 5    $0.05
 4    $0.54
 6    $5.46
 3   $54.63

The keyed decimal approach seems more straightforward to me, and it also requires 2 fewer keystrokes when entering non-decimal amounts (e.g. $10 only requires typing 1-0, instead of 1-0-0-0). However, users of our payment processing app have accidentally charged amounts like $123,456.00 instead of $1,234.56 because they were expecting a fixed decimal interaction instead of a keyed decimal interaction.

Is this just a matter of preference, or are there other merits to a fixed decimal approach that I may be overlooking?

  • 1
    Historically, cash registers used the fixed decimal approach, so some groups of users may be used to that approach. What other systems are your users typically using in parallel with your system? – Stobor Sep 19 '19 at 4:20

Fixed Decimal Benefits

Reduced Input Errors Requiring no decimal reduces syntax error handling. The input is limited to 0-9 numeric characters and delete/backspace. So you help avoid cases like “54.2.89” (multi-decimal) or mistype of decimals.

Requires No Decimal (or Comma) Sticking to digits 0-9 means you only need to use the top row of the keyboard.

Programmatic Simplicity Having a known format might make it easier to check validity and potentially write less code in the front-end. Though, the backend code should remain relatively consistent between versions. Does 542,35 mean 542.35?

Explicit Declaration The interface does not have to form opinions to handle values like 542.3566, which could be $542.36 or $542.35 depending on the rounding rules.

Fixed Decimal Costs

More Typing Simple, whole numbers require entering at least 2 additional numbers. For example, to enter “$54” one must enter 5-4-0-0, which can be a nuisance.

Increased Input Errors To someone not paying attention, when entering 5-4 they may intend $54, but would really be entering $0.54. If not careful, a simple mistake could result in not paying that electricity bill.

I think it’s a matter of preference. Is it more cognitive load to be alert in understanding desired value, or is it more work to desire decimals (or commas) on various input devices (keypads, keyboards, phone pads, stylus input, etc). With regards to older devices, I imagine some might be error prone, translating decimals to 0 to ..

| improve this answer | |

The Fixed Decimal approach reduces confusion in a numerical field that requires decimal points.

Look at bank ATMs: when you're entering the value of a check (which you're depositing) you are using the Fixed Decimal approach. They do this as they want to reduce the chance of error. If one types in 28 the question is: are you depositing $28.00 or $0.28

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.