# MoneyFormat

This system variable defines the format pattern used by Qlik for automatic translation of text to number where the number is prefixed by a monetary symbol. It also defines how measures whose Number Formatting properties are set to ‘Money’ will be displayed in chart objects.

The symbol defined as part of the format pattern in the `MoneyFormat` system variable replaces the currency symbol set by your regional settings.

Tip note

By default, Qlik Sense displays numbers and text differently in table charts. Numbers are right-aligned, and text is left-aligned. This makes it easy to find text-to-number conversion issues. Any tables on this page that show Qlik Sense results will use this formatting.

Syntax:

MoneyFormat

`Set MoneyFormat='$ #,##0.00; ($ #,##0.00)';
`

This formatting will be displayed in chart objects when a numerical field's `Number Formatting` property is set to `Money`. Further, when numerical text fields are interpreted by Qlik Sense, if the currency symbol of the text field matches that of the symbol defined in the `MoneyFormat` variable, Qlik Sense will interpret this field as a monetary value.

This function is often used together with the following functions:

Related functions

| Function | Interaction |
| --- | --- |
| [MoneyDecimalSep](https://help.qlik.com/en-US/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/MoneyDecimalSep.htm) | For Number Formatting, `MoneyDecimalSep` will be used in field formatting of objects. |
| [MoneyThousandSep](https://help.qlik.com/en-US/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/MoneyThousandSep.htm) | For Number Formatting, `MoneyThousandSep` will be used in field formatting of objects. |

## Regional settings

Unless otherwise specified, the examples in this topic use the following date format: MM/DD/YYYY. The date format is specified in the `SET DateFormat` statement in your data load script. The default date formatting may be different in your system, due to your regional settings and other factors. You can change the formats in the examples below to suit your requirements. Or you can change the formats in your load script to match these examples.

Default regional settings in apps are based on the regional system settings of the computer or server where Qlik Sense is installed. If the Qlik Sense server you are accessing is set to Sweden, the Data load editor will use Swedish regional settings for dates, time, and currency. These regional format settings are not related to the language displayed in the Qlik Sense user interface. Qlik Sense will be displayed in the same language as the browser you are using.

## Example 1 - MoneyFormat

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/MoneyFormat.htm)

#### Load script and results

Overview

Open the Data load editor and add the load script below to a new tab.

The load script contains a dataset which is loaded into a table named `Transactions`. The default `MoneyFormat` variable definition is used.

Load script

```
SET MoneyThousandSep=',';
SET MoneyDecimalSep='.';
SET MoneyFormat='$###0.00;-$###0.00';

Transactions:
Load
date,
id,
amount
Inline
[
date,id,amount
01/01/2022,1,$10000000441
01/02/2022,2,$21237492432
01/03/2022,3,$249475336
01/04/2022,4,$24313369837
01/05/2022,5,$7873578754
01/06/2022,6,$24313884663
01/07/2022,7,$545883436
01/08/2022,8,$35545828255
01/09/2022,9,$37565817436
01/10/2022,10,$3454343566
];
```

Results

Load the data and open a sheet. Create a new table and add these fields as dimensions:

* `date`

* `amount`

Add this measure:

`=Sum(amount)`

Under Number formatting, select Money to configure `Sum(amount)` as a monetary value.

Results table

| date | Amount | =Sum(amount) |
| --- | --- | --- |
| Totals |  | $165099674156.00 |
| 01/01/2022 | $10000000441 | $10000000441.00 |
| 01/02/2022 | $21237492432 | $21237492432.00 |
| 01/03/2022 | $249475336 | $249475336.00 |
| 01/04/2022 | $24313369837 | $24313369837.00 |
| 01/05/2022 | $7873578754 | $7873578754.00 |
| 01/06/2022 | $24313884663 | $24313884663.00 |
| 01/07/2022 | $545883436 | $545883436.00 |
| 01/08/2022 | $35545828255 | $35545828255.00 |
| 01/09/2022 | $37565817436 | $37565817436.00 |
| 01/10/2022 | $3454343566 | $3454343566.00 |

The default `MoneyFormat` definition is used. This looks as follows: `$###0.00;-$###0.00`. In the results table, the format of the `amount` field displays the currency symbol and the decimal point and decimal places have been included.

## Example 2 - MoneyFormat with thousands separator and mixed input formats

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NumberInterpretationVariables/MoneyFormat.htm)

#### Load script and results

Overview

Open the Data load editor and add the load script below to a new section.

The load script contains:

* A mixed-input format dataset, which is loaded into a table named `Transactions` with thousands separators and decimal separators interspersed.

* A modification of the `MoneyFormat` definition is modified to include a comma as the thousands separator.

* One of the rows of data erroneously delimited with thousands separator commas in the wrong places. Note how this amount is left as text and not interpretable as a number.

Load script

```
SET MoneyThousandSep=',';
SET MoneyDecimalSep='.';
SET MoneyFormat = '$#,##0.00;-$#,##0.00';

Transactions:
Load
date,
id,
amount
Inline
[
date,id,amount
01/01/2022,1,'$10,000,000,441.45'
01/02/2022,2,'$212,3749,24,32.23'
01/03/2022,3,$249475336.45
01/04/2022,4,$24,313,369,837
01/05/2022,5,$7873578754
01/06/2022,6,$24313884663
01/07/2022,7,$545883436
01/08/2022,8,$35545828255
01/09/2022,9,$37565817436
01/10/2022,10,$3454343566
];		
```

Results

Load the data and open a sheet. Create a new table and add these fields as dimensions:

* `date`

* `amount`

Add this measure:

`=Sum(amount)`

Under Number formatting, select Money to configure `Sum(amount)` as a monetary value.

Results table

| date | Amount | =Sum(amount) |
| --- | --- | --- |
| Totals |  | $119,548,811,911.90 |
| 01/01/2022 | $10,000,000,441.45 | $10,000,000,441.45 |
| 01/02/2022 | $212,3749,24,32.23 | $0.00 |
| 01/03/2022 | $249475336.45 | $249,475,336.45 |
| 01/04/2022 | $24 | $24.00 |
| 01/05/2022 | $7873578754 | $7,873,578,754.00 |
| 01/06/2022 | $24313884663 | $24,313,884,663.00 |
| 01/07/2022 | $545883436 | $545,883,436.00 |
| 01/08/2022 | $35545828255 | $35,545,828,255.00 |
| 01/09/2022 | $37565817436 | $37,565,817,436.00 |
| 01/10/2022 | $3454343566 | $3,454,343,566.00 |

At the start of the script, the `MoneyFormat` system variable is modified to include a comma as a thousands separator. In the Qlik Sense table, the formatting can be seen to include this separator. Furthermore, the row with the erroneous separator has not been interpreted correctly and remains as text. This is why it does not contribute towards the summation of the amount.