Lelet Try it live
Web · PWAlive

Slow internet? Prove it.

Measure your speed, compare it with the plan you pay for, and get a ready-to-send complaint letter with the numbers in it. Free, no account, your data stays on your device.

Web · PWA
lelet · live demolive demo
Lelet screenshot
2platforms: Web, PWA
MITopen source licence
Why it exists

A speed test gives you a number. Lelet gives you a case.

One slow test is easy for a provider to wave away.

Lelet keeps every test, compares the median with your plan, shows how strong your case is, and writes the complaint for you.

How it works

From first test to second letter

  1. 1

    Tes

    Press the start button. Repeat on different days and at different hours.

  2. 2

    Paket

    Type the speed your provider sold you (Mbps) and what you pay per month.

  3. 3

    Bukti

    Watch the checklist fill up: 10 tests, 3 days, 3 at peak hours and 3 outside them.

  4. 4

    Surat

    Copy the letter, send it yourself, then mark it as sent so the deadline count starts.

What's inside

What Lelet keeps for you.

A test sized for small quotas

A "Hemat" test takes under 20 seconds and at most about 13 MB of data. Normal and Penuh modes are there for faster plans.

Your plan as the yardstick

Type the speed your provider sold you and what you pay per month. Lelet compares the median of your tests with it: 80% or more matches the plan, under 50% is far below. This is Lelet's own rule, not a legal threshold.

A checklist for a strong case

The Bukti screen shows what is still missing: 10 tests, 3 days, 3 tests at peak hours (18.00-22.59) and 3 outside them.

A letter with your numbers in it

Copy the formal letter or the short WhatsApp version and send it to your provider's customer service. Print or save as PDF from the same page.

A deadline count, then a second letter

Enter the date you sent the letter and the ticket number. Lelet counts 7 working days, Monday to Friday, leaves out Indonesia's national holidays for 2026 and 2027, and offers a calendar reminder for the deadline. If nothing is fixed by then, it writes a second letter to Komdigi's complaint service with a copy to the provider.

An estimate in rupiah

Price times the share of speed you did not get: an estimate of what you paid for and did not receive. It is labelled as an estimate everywhere it appears.

Indonesian and English, light and dark

Installs to the home screen and opens offline. Press "Lihat contoh" to see the receipt and the letter with sample data first.

Run it yourself

Run it yourself

From the README’s “Run it yourself” section. Full options, requirements and troubleshooting are there too.

Open the README
shell
$ python -m http.server 8080
Your data

Your tests stay in your browser

  • No account, no backend, no cookies, no third-party scripts or fonts, and your tests, plan and letter dates are kept only in your browser's localStorage.
  • The test traffic goes to Cloudflare, which sees your IP address like any site you visit.
  • The page counts three things once per device, with no identifier and none of your data: the first test, the 10th test and a letter marked as sent, each by fetching an empty file from GitHub, which sees your IP address.
  • Counting is off when your browser sends Do Not Track or Global Privacy Control, when you press "Matikan hitungan" in the footer, or when you open the page with ?count=off.
Good to know

Honest limits.

Straight from the README, so you know what you're getting before you try it.

  • This is not an official measurement and not legal advice.
  • A browser test measures the whole path: your device, your Wi-Fi, your router and the provider.
  • Most home plans are sold as "up to" a speed, and a provider can point to that wording.
  • The wording of both letters has not been reviewed by a lawyer.
  • The 7 working days are the letter's own deadline, not a period fixed by law; the count skips national holidays up to 31 December 2027 but treats joint leave (cuti bersama) as working days.
Under the hood

How it's built.

Built with

Language
JavaScriptHTML/CSS
Platform
PWAOffline service worker
Testing
Automated tests
UI
Multi-language UI

24 files in the repo · last updated 14 Nov 2026.

Browse the code

Recently shipped

  1. Feat: track the sent letter, count 7 working days, write the second letter

  2. Add live check for the published page

  3. Speed proof and complaint letter (PWA, Indonesian + English)

Full history on GitHub
Questions

Good questions.

What does it run on?

Web, PWA. You can try it in the browser with nothing to install.

How do I get it running?

The commands in the “Run it yourself” box above come straight from the README. Paste them into a terminal; the README covers options and troubleshooting.

Where does my data go?

No account, no backend, no cookies, no third-party scripts or fonts, and your tests, plan and letter dates are kept only in your browser's localStorage. The test traffic goes to Cloudflare, which sees your IP address like any site you visit.

How does it measure?

Download uses 3 parallel streams from Cloudflare's public speed-test endpoint, leaves out the ramp-up (up to 1 second) and averages the rest.

Does Lelet send the letter for me?

No. Lelet does not send anything and cannot see whether the provider answered.

Which law does the letter cite?

Law No. 8 of 1999 on Consumer Protection: Article 4 letters c, d and h, Article 7 letter g and Article 19 paragraph (1).

What doesn't it do yet?

This is not an official measurement and not legal advice. A browser test measures the whole path: your device, your Wi-Fi, your router and the provider.

Is it finished?

Not yet: it's marked “live” and still changing. The README always has the current state.

Keep exploring

More from the same workbench.

Run the first test.

Slow internet? Prove it.