How GST and ++ work
GST, the Goods and Services Tax, is 9% on most things you buy in Singapore from a GST-registered business. A price you see in a shop must already have the GST in it: “S$109” or “S$109 w/GST”, never “S$100 + GST”.
- Add GST: the price × 1.09. S$100 before GST is S$109 with it.
- Take GST out: the GST in a price is 9/109 of it, not 9%. S$109 has S$9 of GST in it; S$100 has S$8.26.
Why ++ is 19.9%, not 19%
Restaurants and hotels that charge a service charge are the one exception to GST-inclusive prices: they can show prices before service charge and GST, with a notice that prices are “subject to GST and service charge”. That’s the ++. The service charge, usually 10%, is added first, and then 9% GST on the price and the service charge:
| IRAS’s example | Amount |
| Food and drinks | S$100.00 |
| 10% service charge | S$10.00 |
| 9% GST on S$110 | S$9.90 |
| What you pay | S$119.90 |
So a ++ price × 1.199 is what you pay, and what you paid ÷ 1.199 is the ++ price. Each step is rounded to the nearest cent, so this calculator works it out the way the bill does.
GST over the years
| From | To | Rate |
| 1 Jan 2024 | now | 9% |
| 1 Jan 2023 | 31 Dec 2023 | 8% |
| 1 Jul 2007 | 31 Dec 2022 | 7% |
| 1 Jan 2004 | 30 Jun 2007 | 5% |
| 1 Jan 2003 | 31 Dec 2003 | 4% |
| 1 Apr 1994 | 31 Dec 2002 | 3% |
From IRAS, checked 2 Nov 2026: current GST rates, displaying and quoting prices (the ++ rules and example), invoicing customers (rounding), do I need to register for GST, the tourist refund scheme and importing goods. The 10% service charge is the usual one, not a rule: it’s the restaurant’s to set.
Questions
How much is S$100++?
S$119.90: S$100, plus a 10% service charge of S$10, plus 9% GST on the S$110, S$9.90. It’s IRAS’s own example. A S$50++ dish is S$59.95, and S$88++ is S$105.51.
Why is ++ 19.9% and not 19%?
Because the GST is charged on the service charge too. 10% service charge makes S$100 into S$110, and 9% GST on S$110 is S$9.90, not S$9. The extra 0.9% is 9% GST on the 10% service charge.
How do I work out the GST in a price?
Multiply the price with GST by 9/109 (about 0.0826), not by 9%. A S$54.50 bill has S$4.50 of GST in it, and S$50.00 before GST. Taking 9% of S$54.50 would give S$4.91, which is too much: the 9% is on the price before GST.
Does every shop and hawker stall charge GST?
No. Only GST-registered businesses can charge GST. A business must register when its taxable sales are more than S$1 million in a calendar year, or are expected to be over the next 12 months; below that, registering is up to it. So a small business, like a hawker stall, often isn’t registered and charges no GST. You can check a business on IRAS’s GST registered business search, or look for a GST registration number on the receipt.
Can a shop show prices without GST?
Not if it’s GST-registered: prices it shows or quotes to the public must include GST, and showing them without it can be fined up to S$5,000. The exception is hotels and restaurants that charge a service charge: they may show prices before GST and service charge (the ++), as long as a notice says so prominently. One without a service charge must show the full price.
Can tourists get the GST back?
Yes, on goods taken out of Singapore, under the electronic Tourist Refund Scheme (eTRS). You must be 16 or older and not a Singapore Citizen or PR, spend at least S$100 with GST at one shop (up to 3 receipts from the same shop on the same day can add up), show your passport when you buy, and leave through Changi Airport or Seletar Airport with the goods within 2 months, claiming at the airport. A handling fee comes off the refund. Services, hotel stays and anything used up in Singapore don’t count.
Do I pay GST on things I buy online from overseas?
Often, yes. A GST-registered overseas seller or marketplace charges 9% GST when you buy goods worth up to S$400 sent by air or post, and on digital and other services from overseas. Goods worth more than S$400 pay GST on their full value when they come in, usually collected by the courier or SingPost.
Is the amount I type sent anywhere?
No. It’s all worked out in your browser, and nothing you type goes into the page’s address.