All projects
Website

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.
Numekara's home page headed Personal Learning System for Mastering Maths
Screenshot

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.

  1. 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.

  2. 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.

  3. 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.

  4. 04

    Consent before tracking

    Ad pixels such as Meta and TikTok only load after the visitor agrees, and never on learning pages.

  5. 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.

  1. 1People

    • VisitorsProspective students and parents from Google or social media.
  2. 2What they see

    • Indonesian pagesHome, programmes, prices, and about us at the main address.
    • English pagesThe same content under addresses starting with /en.
  3. 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.
  4. 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