Bilingual Marketing Website
An Indonesian and English website with programme pages, prices from configuration, structured data for Google, and consent-first analytics.
- Status
- Live
- Layers
- Frontend
- Used by
- Prospective students and parents searching Google for maths tutoring, in Indonesian or English.

The problem
Education websites are often slow, hard to find on Google, and need prices updated page by page.
The solution
Every page exists in two languages with an hreflang sitemap, structured data, and RSS. Programme prices come from one scheduled file, and ad tracking only starts after visitor consent.
How it works
What happens, step by step, from the user's point of view.
- 01
Visitors arrive from Google
Every page carries structured data and is listed in the sitemap, so Google understands the programme, course, and article pages.
- 02
Language of their choice
The main address is always in Indonesian. The English version lives under /en, and visitors can switch with the language button.
- 03
Prices come from one file
Every programme price is read from one price file that the server also uses. A price change is made once.
- 04
Consent before tracking
Ad pixels such as Meta and TikTok only load after the visitor agrees, and never on learning pages.
- 05
Installable like an app
On a phone, visitors can add the website to their home screen and open it like an app.
System design
Who uses it, what they see, what works behind the scenes, and where the data lives. Read it from left to right.
1People
- VisitorsProspective students and parents from Google or social media.
2What they see
- Indonesian pagesHome, programmes, prices, and about us at the main address.
- English pagesThe same content under addresses starting with /en.
3Behind the scenes
- Next.js on CloudflareBuilds the pages and serves them from the Cloudflare Workers network.
- Consent bannerRecords the visitor's choice before any ad pixel may load.
4Data and outside services
- Price fileOne JSON file with each programme's price and effective date.
- Google SearchReads the bilingual sitemap and each page's structured data.
Key features
- Indonesian and English
- Prices from one file
- Structured data and sitemap
- Consent-first tracking
- Installable like an app
Built with
- Next.js
- React
- next-intl
- Tailwind CSS
- Cloudflare Workers
What the business gets
- One website serves both local and international visitors.
- Prices match on every page because they come from one source.
- Google can understand and show the programme pages more easily.
- Ad tracking respects each visitor's choice.
Terms on this page
- Sitemap
- A list of every page on the site that Google reads so nothing is missed.
- Hreflang
- A tag that tells Google which page is the Indonesian version and which is the English one.
- Structured data
- Extra information behind a page that helps Google understand it, such as a course name or FAQ.
- Pixel
- A small piece of code from an ad platform that measures how ads perform.
Can it work for your business?
For businesses serving local and international customers: one bilingual website that's easy to maintain and search-friendly.
Ask about this project