
What you pay,
and what a Malaysian pays
Nearly every ticketed attraction in Malaysia has two gate prices: one for MyKad holders and one for you. No reseller publishes the comparison, because resellers cannot — they sell the ticket, and the gap is not their story to tell. It is ours. Below is every ticketed thing in and around Kuala Lumpur with both numbers side by side, the percentage between them, and the mechanism that produces it, explained without outrage.
Budget the non-MyKad rate or you will be out by 100–200% on tickets. The Petronas Twin Towers charge you RM98 and a Malaysian RM35 — a 180% gap. Zoo Negara is RM93 against RM48. Genting SkyWorlds is RM168 against RM88. The practice is legal, it is common across Southeast Asia, and it funds domestic access to attractions in a country where the median wage makes a RM98 ticket absurd. The problem is not that it exists. The problem is that nobody discloses it, so a visitor who priced a week from reseller headlines walks into a gate charging double. Klook has headlined Petronas at “from US$5.25” — that is the RM35 MyKad rate; the non-MyKad rate on the same listing works out around US$17.09. Some of the best things here charge everyone the same, and that section is worth reading twice.
Every ticketed attraction, both prices
Gate prices as published by each operator and checked in August 2026, at RM 4.09 to the US dollar. The left-hand column is the number you will actually be charged. Where the gap reads “same price”, that is a genuine finding rather than missing data — and the pattern in those rows is the most interesting thing on this page.
| Attraction | You pay | MyKad holder pays | The gap |
|---|---|---|---|
| Petronas Twin TowersAdult. Child and senior RM50 against RM17. One ticket covers the Skybridge on L41 and level 86. | RM98 | RM35 | +180% |
| Zoo NegaraAdult; child RM48 against RM21. 09:00–17:00. We give it a SKIP on price alone. | RM93 | RM48 | +94% |
| Genting SkyWorldsOnline rate. RM198 walk-in, and online booking needs at least a day's notice. Closed Tuesdays. | RM168 | RM88 | +91% |
| KL Bird ParkAdult. Steep for a solo traveller; the per-head maths changes with children. | RM90 | RM50 | +80% |
| Sunway LagoonOne-day ticket, range by season and package. Two-day RM320–429. Night Park RM84–94. | RM200–268 | RM145–193 | +38% |
| Aquaria KLCCA readable floor, not a firm price — the operator's full price list could not be resolved. 10:00–20:00, last entry 19:00. | from RM80 | from RM54 | +48% |
| GOKL city busFree for Malaysians, RM1 a ride for foreigners since 1 January 2024. A percentage against zero is meaningless, but the principle is the same. | RM1 per ride | Free | same price |
| Petrol, RON95MyKad holders pay the subsidised BUDI95 rate. This is why self-drive is irrational here and Grab plus rail is not. | RM3.62–3.82 per litre | RM1.99 per litre | +87% |
| My50 unlimited monthly passMyKad only. There is no foreigner equivalent at any price — this one is not a markup, it is a door you cannot open. | Unavailable | RM50 / 30 days | same price |
| Awana SkyWay cable carOne price for everyone. RM11 one way, 07:00–23:00, and one of the best-value rides in Malaysia. | RM19 return | RM19 return | same price |
| Batu Caves Temple CaveFree for everyone, 07:00–21:00. Ramayana Cave RM5, Cave Villa RM15, sarong hire RM5–10. | Free | Free | same price |
| Islamic Arts Museum MalaysiaSame price for everyone. Student and Malaysian senior RM10, non-Malaysian senior RM20, under-6 free. | RM20 | RM20 | same price |
Checked August 2026 against operator pricing. The KL Tower MyKad rate is quoted inconsistently across sources, so we do not publish it — the non-Malaysian rate of RM110 for the Observation Deck plus Sky Deck is firm. Merdeka 118 publishes no public deck price at all and we will not invent one.
Why two prices exist, and why that is not the scandal
Dual pricing in Malaysia is legal, long-established and common across Southeast Asia. Thailand, Indonesia, Vietnam, Cambodia and India all do some version of it. Understanding why makes it much easier to budget for calmly.
The logic is straightforward. A national zoo, a state aquarium or a subsidised bus exists partly as public infrastructure, funded in part by Malaysian taxpayers, and priced so that a Malaysian family can actually use it. Malaysian median household income does not support a RM98 ticket to a domestic attraction. Charging visitors — who arrived on an international flight and are spending in a strong currency — a rate closer to what the experience is worth on the world market is how the domestic price stays low. The MyKad rate is the subsidy; your rate is closer to the unsubsidised one.
The same reasoning drives the fuel gap. Under BUDI95, MyKad holders buy RON95 at RM1.99 a litre while everyone else pays the float rate of RM3.62–3.82. That is a targeted subsidy doing exactly what a targeted subsidy is meant to do. It is also the reason renting a car in Kuala Lumpur is a bad idea for you specifically, quite apart from the traffic and the parking.
So the problem is not the two-tier structure. The problem is disclosure. Almost nothing in the booking chain tells you which price you are looking at. Klook has run the Petronas Twin Towers under a headline of “from US$5.25” — about RM21, which is not a foreigner price at any point in the ticket table; it is the MyKad child or adult rate doing promotional work. The non-MyKad adult ticket on that same listing works out at roughly US$17.09. Nothing about that is illegal and nothing about it is unusual. It is simply the reason a traveller who built a budget from search results arrives 100–200% short on tickets.
There is a second-order effect worth naming. Because the gap is invisible until the gate, it lands hardest on exactly the people who planned most carefully — the ones who costed the trip in advance. A traveller who books nothing and decides each morning absorbs the difference as it comes. A traveller with a spreadsheet gets a nasty week. That is backwards, and it is the whole reason this page exists.
The attractions with no gap are disproportionately the good ones
Read the “same price” rows again. There is a pattern in them, and it flatters Kuala Lumpur considerably.
The Islamic Arts Museum Malaysia — the best museum in the country, and by some distance — is RM20 for everyone. No MyKad rate, no foreigner rate, one ticket. Batu Caves' Temple Cave, the most photographed site in the Klang Valley, is free for everyone. The Royal Selangor Visitor Centre, TripAdvisor's #2-ranked attraction in Kuala Lumpur at 4.7/5 from 5,142 reviews, is free to enter and runs a free shuttle. The Awana SkyWay at Genting is RM19 return for everyone, and it is a better ride than most of what it delivers you to.
Masjid Negara, Masjid Jamek and Masjid Wilayah are free, with robes provided at no charge. Thean Hou Temple is free, 09:00–18:00. The Chinatown lorongs, Merdeka Square, the Perdana Botanical Gardens, KLCC Park and its fountain shows, the Saloma Link, Bank Negara Museum, Taman Tugu — all free, all to everyone. The FRIM Forest SkyWalk is RM5 for a foreign adult, which is inside the noise floor.
Put those together and a properly built Kuala Lumpur itinerary barely touches the dual-priced tier at all. Fifteen free things are listed on our free things to do page. The gap matters enormously if your plan is Petronas, Aquaria, the Bird Park and Zoo Negara — four attractions, roughly RM361 for one adult, against RM181 on a MyKad. It matters hardly at all if your plan is temples, lorongs, hills and hawker stalls, which is the better trip anyway.
The practical rule: treat the dual-priced attractions as a shortlist to choose one or two from, not a checklist. Petronas at the sunset slot, or KL Tower at 09:00 for the photograph. Not both, and certainly not the zoo as well.
Where to buy, knowing which price is which
Almost every ticketed attraction in Kuala Lumpur charges foreigners more than Malaysians — Petronas is RM98 against RM35, a 180% gap. Resellers headline the MyKad rate. Every price on this site is the non-MyKad rate you will actually pay, and the gate price sits next to the reseller price so you can see the markup.
Dual pricing in Malaysia FAQ
Is dual pricing legal in Malaysia?
Yes. Operators are entitled to set a resident rate and a non-resident rate, and doing so is standard practice across Southeast Asia — Thailand, Indonesia, Vietnam, Cambodia and India all run some version of it. The Malaysian versions are published on operators' own price lists; the issue is that resellers headline whichever number is lower.
Can I use the MyKad rate if I have a Malaysian friend?
No. The card is checked at the counter, physically, against the person collecting the ticket. Attractions that price by MyKad ask to see it, and a friend buying on your behalf does not transfer the entitlement to the person who walks through the turnstile. Budget the non-MyKad rate.
Does MM2H or a work permit get me the local rate?
It varies by operator and you should not assume it. Some attractions extend the resident rate to holders of a Malaysia My Second Home visa or a valid work pass on production of the document; others price strictly by MyKad. Ask at the counter before you buy, and have the physical document, not a photo of it.
Which Kuala Lumpur attractions charge everyone the same?
The Islamic Arts Museum at RM20, the Awana SkyWay at RM19 return, the Batu Caves Temple Cave and the mosques at free, and the Royal Selangor Visitor Centre at free with a free shuttle. That list contains the best museum, the best cable car and the fourth-highest-rated attraction in the city, which tells you something.
Why is the Petronas price online so much lower than RM98?
Because the headline is usually the MyKad rate. Klook has advertised the Twin Towers “from US$5.25”, which is around RM21 and is not a foreigner price at any point in the table. The non-MyKad adult ticket on the same listing works out around US$17.09, and RM98 is the gate price you will actually pay.
How much extra should I budget for dual pricing?
If your plan is heavy on ticketed attractions, budget roughly double what a Malaysian would spend on the same list — Petronas, Aquaria, KL Bird Park and Zoo Negara together are about RM361 for one foreign adult against RM181 on a MyKad. If your plan is temples, markets, hills and hawker food, the gap is close to irrelevant.
Can foreigners buy the My50 travel pass?
No. The RM50 unlimited 30-day Rapid pass is MyKad-only and there is no equivalent for visitors at any price. Pay per journey instead — MRT and LRT fares are a couple of ringgit a trip, which for a week-long visit still works out cheaper than a monthly pass would.
Is it worth renting a car in Kuala Lumpur?
No. Beyond the traffic and the parking, foreigners pay RM3.62–3.82 a litre for RON95 against RM1.99 for MyKad holders under BUDI95. Grab is cheap and metered, the rail network reaches almost everything, and self-drive is the one decision the fuel gap makes straightforwardly irrational.