---
title: "MAS Exchange Rate History: Download Singapore Dollar Rates 1988 to 2026 as CSV, Excel or API"
description: "Monetary Authority of Singapore exchange rates against the Singapore dollar from January 1988, assembled as one CSV per year for up to 21 currencies, with Excel, Google Sheets, Python and API examples and reference points to check your load."
canonical: https://allratestoday.com/blog/mas-exchange-rate-history-download/
source: AllRatesToday (https://allratestoday.com/) — Markdown mirror of the page above; index of all pages at https://allratestoday.com/llms.txt
generated: 2026-11-12T08:08:57.315Z
---

The Monetary Authority of Singapore (MAS) offers its exchange rates through a web form: choose a frequency, a period and currencies, then download. That works for one request. For a GST policy review, a functional-currency tax computation or a pricing model you want the whole series in one place. This guide points to it and shows how to use it.

## What MAS itself provides

The MAS exchange rate viewer returns yearly, monthly, weekly or daily figures from 1988 for 21 currencies. Daily figures are values as of noon and are released at 3 pm on every business day; weekly and monthly outputs carry an end-of-period value and an average for the period. MAS quotes the US dollar, euro and sterling per unit and every other currency per 100 units.

## The assembled series: one CSV per year

The [central-bank-exchange-rates](https://github.com/AllRates-Today/central-bank-exchange-rates/tree/main/data/mas) repository holds the MAS table under `data/mas/`: `latest.json` for the newest table, `daily/` for one JSON file per date, and `history/` with one CSV per year from 1988 to 2026.

```
https://raw.githubusercontent.com/AllRates-Today/central-bank-exchange-rates/main/data/mas/history/2025.csv

date,base,quote,type,value
2025-01-02,AED,SGD,reference,0.3704
2025-01-02,AUD,SGD,reference,0.8456
...
```

Each row is Singapore dollars per **one** unit of the `base` currency, so the per-100 currencies are already divided through. The series holds about 125,000 rows across 6,771 dates. Coverage grows over time: weekly figures for 7 currencies in 1988, daily figures from the 2000s, and all 21 currencies by 2010. Licence: **CC BY-NC 4.0**, so free for research, study and internal non-commercial use with attribution; commercial systems use the API below.

## Excel

Data > Get Data > From Web, paste the raw URL above, and Power Query loads it as a table. Filter `base` to the currencies you need and pivot on `date`. Refresh re-reads the file, so the current year's sheet stays up to date.

## Google Sheets

```
=QUERY(IMPORTDATA("https://raw.githubusercontent.com/AllRates-Today/central-bank-exchange-rates/main/data/mas/history/2026.csv"),
       "select Col1, Col5 where Col2 = 'USD'", 1)
```

That returns the date and the US dollar rate for every business day of 2026. Wrap it in `VLOOKUP` to pick the rate for an invoice date.

## Python

```
import pandas as pd
base = "https://raw.githubusercontent.com/AllRates-Today/central-bank-exchange-rates/main/data/mas/history/{}.csv"
df = pd.concat(pd.read_csv(base.format(y), parse_dates=["date"]) for y in range(2024, 2027))
wide = df.pivot(index="date", columns="base", values="value")

print(wide.loc["2025-12-31", ["USD", "EUR", "GBP"]])
# USD 1.2841, EUR 1.5077, GBP 1.7288
usd25 = wide["USD"]["2025"]
print(round(usd25.resample("ME").last().mean(), 4))   # 1.3056, average of month-end rates
print(round(usd25.mean(), 4))                          # 1.3066, average of daily rates
print(wide["USD"].asof("2026-11-08"))                  # a Sunday: Friday's table
```

The month-end average is the figure IRAS prescribes for tax computations in a non-Singapore dollar functional currency. `asof` gives the last table before a weekend or holiday date.

## One date, as an API call

```
# today's MAS table
curl "https://allratestoday.com/api/open/central-bank/mas"

# a past date or a range, with a key
curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://allratestoday.com/api/v1/central-bank/mas/2025-12-31"

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://allratestoday.com/api/v1/central-bank/mas/history?symbol=EUR&from=2026-01-01&to=2026-11-10"
```

The dated response includes `requested_date` and `rate_date`, so a weekend fallback is explicit in the data. Add `?format=csv`, `xml` or `xlsx` to any table endpoint. Dated tables and history are on paid plans; a history request is counted as one call per currency per month of data.

## Reference points for checking your load

| Date | USD | EUR | GBP | HKD | MYR |
| --- | --- | --- | --- | --- | --- |
| 31 Dec 2024 | 1.3603 | 1.4160 | 1.7074 | 0.1752 | 0.3043 |
| 30 Jun 2025 | 1.2758 | 1.4943 | 1.7494 | 0.1625 | 0.3025 |
| 31 Dec 2025 | 1.2841 | 1.5077 | 1.7288 | 0.1650 | 0.3165 |
| 30 Jun 2026 | 1.2943 | 1.4752 | 1.7127 | 0.1650 | 0.3180 |
| 30 Sep 2026 | 1.2780 | 1.4483 | 1.6904 | 0.1629 | 0.3133 |

If the Hong Kong dollar loads as 16.50 where you expect 0.1650, your source was the MAS display in units of 100.

## What people use the history for

- **GST:** the rate for an invoice date, or a monthly policy rate. See [the GST invoice guide](https://allratestoday.com/blog/singapore-gst-invoice-exchange-rate-foreign-currency/).
- **Customs:** checking the weekly average used on an import permit. See [the Customs guide](https://allratestoday.com/blog/singapore-customs-exchange-rate-mas-weekly-average-import-gst/).
- **Corporate tax:** the average of month-end rates for a non-Singapore dollar functional currency. See [the corporate tax guide](https://allratestoday.com/blog/singapore-corporate-tax-functional-currency-exchange-rate/).
- **Closing:** year-end revaluation. See [the 31 December 2025 rates](https://allratestoday.com/blog/exchange-rate-31-december-2025-singapore-mas-closing-rates/).

## FAQ

### How far back does MAS exchange rate history go?

The MAS series starts in January 1988. Early years are weekly for a handful of currencies; daily figures begin in the 2000s and all 21 currencies are covered by 2010.

### How many currencies does MAS publish?

21 currencies against the Singapore dollar.

### When are MAS daily rates released?

At 3 pm on every business day. Daily figures are values as of noon.

### Can I download MAS exchange rates as CSV or Excel?

Yes. The assembled series is one CSV per year from 1988 to 2026, and the API returns any table as CSV, XML or Excel.

## MAS rates and live SGD on one key

Mid-market rates every 60 seconds and the official tables of [123 central banks and 6 tax authorities](https://allratestoday.com/central-bank-rates-api/institutions/), as JSON, CSV, XML or Excel. Paid plans from €4.99 a month.

 [See plans](https://allratestoday.com/pricing/)

## Related Articles

- [Exchange rate API for Singapore: MAS rates, GST and customs rules, live SGD](https://allratestoday.com/exchange-rate-api-singapore/)
- [MAS exchange rates today: the official table and endpoints](https://allratestoday.com/central-bank-rates-api/mas/)
- [GST on foreign-currency invoices: which exchange rate IRAS accepts](https://allratestoday.com/blog/singapore-gst-invoice-exchange-rate-foreign-currency/)
- [Singapore Customs exchange rate: the MAS weekly average](https://allratestoday.com/blog/singapore-customs-exchange-rate-mas-weekly-average-import-gst/)
- [Corporate tax in a non-SGD functional currency: the MAS average rate](https://allratestoday.com/blog/singapore-corporate-tax-functional-currency-exchange-rate/)
- [ESOP and share award gains: the Appendix 8B exchange rate](https://allratestoday.com/blog/singapore-esop-rsu-exchange-rate-appendix-8b/)
- [GST InvoiceNow: foreign-currency invoices and the SGD fields](https://allratestoday.com/blog/gst-invoicenow-foreign-currency-invoice-sgd-pint-sg/)
- [MAS closing rates for 31 December 2025](https://allratestoday.com/blog/exchange-rate-31-december-2025-singapore-mas-closing-rates/)
