Apple Numbers CURRENCY Function: Exchange-Rate Attributes and Direction
Select documented currency attributes, recognize unavailable bid/ask fields and validate rate direction and change calculations with fixed controls.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
CURRENCY retrieves an exchange-rate attribute for a currency pair. Its default price describes one unit of the source currency in units of the target currency, using the previous market day’s closing data. It does not directly accept an amount to convert.
Availability and verification
The official CURRENCY reference was retrieved October 15, 2026. The original introduction release and last functioning version are unknown from the checked first-party evidence. Current documentation is not a final supported-version endpoint or a test of every older Numbers client.
No native Numbers session was executed. Fixed examples below are independent controls; remotely supplied values are not claimed as current observations. First-party example values, when identified, remain source examples rather than newly retrieved native results.
Syntax and attribute selectors
CURRENCY(currency-1, currency-2, price)
The first two arguments are quoted currency-code strings, source first and target second. The optional third argument selects the requested attribute; 0 or omission selects price. Apple supports the named selectors illustrated in its examples as well as the numeric modes.
| Mode | Attribute |
|---|---|
| 0 | price, default |
| 1 | name |
| 2 | change |
| 3 | percent change |
| 4 | open |
| 5 | high |
| 6 | low |
| 7 | 52-week high |
| 8 | 52-week low |
| 9 | ask price, currently unavailable |
| 10 | bid price, currently unavailable |
The two unavailable attributes remain documented selectors, but their presence in the list is not evidence that data is currently returned. That availability statement reflects the reference checked on the stated date.
Example formulas and quote direction
=CURRENCY("USD","GBP",0) requests pounds per US dollar at the relevant close. =CURRENCY("USD","GBP","price") expresses the same requested attribute, and omitting only that third argument uses the documented default.
=CURRENCY("EUR","DKK",2) instead requests the change in that pair’s closing rate between the two most recent business days. It is not the rate itself. The exact returned values depend on the provider; no market rate is invented for these formulas.
Complete deterministic conversion control
For a fictional captured rate of 0.80 GBP per USD, use these plain numeric inputs in a separate control worksheet:
| USD amount | GBP per USD assumption | Independent GBP result |
|---|---|---|
| 10 | 0.80 | 8 |
| 50 | 0.80 | 40 |
| 125 | 0.80 | 100 |
| 1000 | 0.80 | 800 |
The arithmetic is source amount × rate. These are not observed CURRENCY results or a current quote. They validate the report surrounding a rate cell without requiring a changing external observation.
At the same fixed assumption, 100 GBP / 0.80 = 125 USD. Reversing the pair changes the units, so the original multiplication cannot be reused blindly in the reverse direction.
Advanced: reconcile change and percent change
Suppose two fictional consecutive closing rates are 0.79 and 0.80 GBP per USD. The rate change is 0.01 GBP per USD. Relative to the earlier rate, the change is 0.01/0.79, approximately 1.26582278%.
A display of 0.01 is not automatically a one-percent change. Keep the absolute change and percentage change in separate columns, and label the denominator used by any independent calculation. Provider display precision can make a calculation from rounded rates differ from its more precise change field.
For a decline from 0.80 to 0.78, the independent change is -0.02 and the relative change is -2.5%. The sign describes the quoted pair; it does not by itself classify every holder’s financial gain or loss.
Advanced: high, low and observation windows
A fictional previous-day open of 0.795, high 0.805, low 0.785 and close 0.80 has a high-low range of 0.020. That is an intraday range, not the change from an earlier day’s close.
A 52-week high or low uses a much longer observation window. Do not substitute it for a previous-day high or low just because both fields contain exchange-rate numbers.
Connectivity, errors and troubleshooting
Apple says entering CURRENCY without internet produces no value and that the formula updates when connectivity returns. This is documented behavior, not a new outage test. The page identifies Yahoo as the data provider.
Previous business-day data is not guaranteed to be yesterday’s calendar date or an executable bank rate. Fees, bid/ask spreads and transaction terms are outside the fixed examples. The reference directs precious-metal futures queries to STOCK rather than treating metal symbols as ordinary currency codes.
If a report looks wrong, inspect pair direction, selector and observation date. Exact error codes for unsupported codes, invalid selectors or provider failures were not native-tested, and the absence of a value should not be silently converted to a zero exchange rate.