Measured, not promised.
MOPX 2.8.0 timed on real Android phones in Google’s Firebase Test Lab, in shops of up to 300,000 bills.
Start with the phones0.17s
- Data checks agreed
- 37/37
- Real phones
- 8
- Biggest shop
- 744 MB
[01]The phones
Budget, mid-range, flagship.
Test Lab has no Redmi, Poco or vivo phones, so the everyday pair is a realme C-series and a OnePlus Nord.
-
Budget
realme C53
- Chip
- Unisoc T612
- CPU
- 2× A75 + 6× A55, 1.82 GHz
- Memory
- 5.6 GB
- Storage
- eMMC
- Screen
- 720×1600, 60 Hz
JS speed 24
-
Mid-range
OnePlus Nord CE 3 Lite
- Chip
- Snapdragon 695
- CPU
- 2× A78 2.21 GHz + 6× A55 1.8 GHz
- Memory
- 7.2 GB
- Storage
- UFS
- Screen
- 1080×2400, 90 Hz
JS speed 47
-
Flagship
Samsung Galaxy S25
- Chip
- Snapdragon 8 Elite
- CPU
- 2× Oryon 4.47 GHz + 6× 3.53 GHz
- Memory
- 10.9 GB
- Storage
- UFS
- Screen
- 1080×2340, Adaptive
JS speed 100
The same JavaScript work on each phone, fastest = 100.
[02]The shops
Up to a decade of bills.
Every phone ran three made-up shops shaped like real ones: popular products sell more, one bill in five names a regular customer, a few are on credit.
-
01 small
10,125 bills
- products
- 1,023
- bill lines
- 33,259
- database
- 25 MB
About a year of a shop making 30 bills a day.
-
02 medium
100,248 bills
- products
- 10,030
- bill lines
- 306,502
- database
- 242 MB
Over a year of a busy shop, 200 bills a day.
-
03 large
300,371 bills
- products
- 50,037
- bill lines
- 909,745
- database
- 744 MB
A busy shop’s decade.
[03]At the counter
New bill to printed receipt, in seconds.
Real taps through the screens in a 10,000-bill shop, timed from the tap to the result.
realme C53 3.1 s
OnePlus Nord CE 3 Lite 3.6 s
Samsung Galaxy S25 1.1 s
- Start a new bill
- Open product search
- Search a product by name
- Back to the bill
- Go to payment
- Complete the bill
- Print the receipt
- C53
- Nord
- S25
- Open the stock list realme C53: 478 OnePlus Nord CE 3 Lite: 633 Samsung Galaxy S25: 98
- Save a new product realme C53: 254 OnePlus Nord CE 3 Lite: 191 Samsung Galaxy S25: 50
- Start a new bill realme C53: 418 OnePlus Nord CE 3 Lite: 268 Samsung Galaxy S25: 104
- Open product search realme C53: 245 OnePlus Nord CE 3 Lite: 475 Samsung Galaxy S25: 74
- Search a product by name realme C53: 135 OnePlus Nord CE 3 Lite: 864 Samsung Galaxy S25: 69
- Back to the bill realme C53: 699 OnePlus Nord CE 3 Lite: 740 Samsung Galaxy S25: 165
- Go to payment realme C53: 333 OnePlus Nord CE 3 Lite: 418 Samsung Galaxy S25: 112
- Complete the bill realme C53: 855 OnePlus Nord CE 3 Lite: 566 Samsung Galaxy S25: 390
- Print the receipt realme C53: 391 OnePlus Nord CE 3 Lite: 308 Samsung Galaxy S25: 181
- Share as PDF realme C53: 1003 OnePlus Nord CE 3 Lite: 859 Samsung Galaxy S25: 245
- Open all receipts realme C53: 412 OnePlus Nord CE 3 Lite: 364 Samsung Galaxy S25: 119
- Find a bill by customer realme C53: 462 OnePlus Nord CE 3 Lite: 670 Samsung Galaxy S25: 48
Android’s UiAutomator taps and looks at the screen every 30 ms, so a time can be late by one look, never early.
[04]Big shops
Year ten bills as fast as day one.
Saving a bill takes a fixed number of steps, so it stays flat as history piles up. The version before took 1.8–3.5 s for a 100-item bill on budget phones.
C53
Nord
S25
Each trio, left to right: 10,000, 100,000 and 300,000 bills.
| 10,125 | 100,248 | 300,371 | |||||||
|---|---|---|---|---|---|---|---|---|---|
| C53 | Nord | S25 | C53 | Nord | S25 | C53 | Nord | S25 | |
| Home numbers | 50 | 25 | 12 | 339 | 168 | 88 | 953 | 486 | 300 |
| Save a 3-item bill | 37 | 60 | 9 | 79 | 44 | 9 | 79 | 41 | 10 |
| Save a 100-item bill | 94 | 74 | 25 | 167 | 75 | 30 | 171 | 111 | 48 |
| Find bills by customer | 5 | 6 | 1 | 7 | 4 | 1 | 12 | 4 | 2 |
| Credit list | 48 | 30 | 15 | 351 | 186 | 88 | 1.0 s | 537 | 343 |
| Today’s report | 65 | 60 | 16 | 397 | 204 | 87 | 1.1 s | 560 | 366 |
| 1-year report | 401 | 218 | 64 | 3.3 s | 1.5 s | 746 | 4.1 s | 2.0 s | 1.2 s |
- Under 0.1 s
- Under 0.3 s
- Under 1 s
- 1 s or more
Home, credit and reports read every bill, so they grow with history: under a second everywhere up to 100,000 bills, except the yearly report.
[05]Start, scroll, print
Smooth from the first tap.
- C53
- Nord
- S25
10,125
100,248
300,371
The slowest start there is: after an unexpected stop, MOPX checks the whole database before Home. A normal start skips the check.
-
realme C53
97.6% Stock100% Receipts -
OnePlus Nord CE 3 Lite
99.4% Stock100% Receipts -
Samsung Galaxy S25
95.9% Stock99.4% Receipts
Receipt to the printer
0.13–0.9s
58 and 80 mm, English and Hindi, from the request to the last byte.
See the receipts
App memory
124–182MB
At every shop size, even with 744 MB of records.
[06]Older phones
Quick on a 2019 phone, too.
A day earlier the same build ran on five more phones, down to a Galaxy A10 with 1.7 GB of memory. In the 300,000-bill shop, all eight saved a 100-item bill in under half a second.
- Samsung Galaxy A10 2019 · 1.7 GB 311 ms
- Samsung Galaxy A03s 2021 · 2.7 GB 420 ms
- Samsung Galaxy A15 2023 · 5.5 GB 225 ms
- realme C53 2023 · 5.6 GB 171 ms
- OnePlus Nord CE 3 Lite 2023 · 7.2 GB 111 ms
- Motorola moto g04 2024 · 3.7 GB 195 ms
- Google Pixel 9 2024 · 11.3 GB 192 ms
- Samsung Galaxy S25 2025 · 10.9 GB 48 ms
[07]Method
How it was measured.
-
Real phones
Retail models in Firebase Test Lab, reset between tests, nothing else running.
-
The real app
The release build with a test harness in front: same engine, same database settings as the Play build.
-
Real taps
An Android test taps through the English screens like a person at the counter.
-
Checked
Medians of repeated runs, and every data check agreed on every phone and shop size.
Every number belongs to the phone it was measured on. The shops are made up, so real shops will differ.