Data On Demand, one-stop data solution
Markets Local sources. Your time zone.

Teams in five regions rely on us for local-language, multi-currency data.

Global coverage
Company A decade of data expertise.

An in-house team of 20+ engineers and analysts serving clients in 12+ countries.

About us
Research

GCC quick commerce: what to measure in 2026

A measurement framework for benchmarking quick-commerce apps across GCC cities: metrics, sampling design, common pitfalls and Arabic/English normalisation.

17 February 2026 · 9 min read · Quick commerce · Middle East & GCC

Quick commerce in the GCC has moved from a convenience experiment to a channel that brands, grocers and investors track closely. Yet comparisons between apps, cities and categories are often unreliable, because the data behind them was collected from a single location, at a single time, with baskets that do not match. This piece sets out a measurement framework rather than findings. It describes what to track, how to sample, where studies typically go wrong and how to handle bilingual catalogues.

Why quick commerce is hard to measure

Quick-commerce apps are local by design. The catalogue, price, stock and delivery promise a shopper sees depend on the dark store serving their address. Two shoppers a few kilometres apart can see different assortments and different delivery fees at the same moment. Many apps also show different prices to members, apply time-limited offers and substitute items silently when stock runs out. A benchmark that ignores these dimensions measures the sampling design, not the market.

What to track

We group metrics into four families. Not every study needs all of them, but the choice should be deliberate and documented.

FamilyMetricDefinitionSampling note
PriceBasket priceSum of selling prices for a fixed, matched basketCapture member and non-member prices separately
PricePromotion depthDifference between regular and promotional price, per itemRecord promotion mechanic and end date where shown
PriceFeesDelivery fee, service fee, small-basket surchargeDepends on basket value and zone; test at set basket values
AvailabilityIn-stock rateShare of basket items purchasable at capture timeDistinguish out of stock from not listed
AvailabilityAssortment breadthNumber of listed items per categoryCount per zone, as dark stores differ
ServiceDelivery promiseEstimated delivery time shown before checkoutVaries by hour and demand; capture across the day
ServiceMinimum order valueThreshold below which ordering is blocked or surchargedCheck per zone and per app
ServiceZone coverageWhether the app serves a given addressUse a fixed grid of sample addresses
ContentListing completenessPresence of images, weights, Arabic and English namesScore against a fixed checklist

Designing the sample

Locations

Start with the cities that matter for the question, typically Dubai, Abu Dhabi, Riyadh, Jeddah, Doha and Kuwait City, then define zones within each city. A zone grid should cover central districts, established residential areas and newer suburbs, because dark store density usually falls with distance from the centre. Fix a sample address per zone and keep it constant across waves. Changing addresses between waves makes trend analysis unreliable.

Time slots

Delivery promises, fees and stock move through the day. At minimum, capture a weekday morning slot, a weekday evening peak and a weekend slot, remembering that the GCC weekend differs by country. Seasonal events deserve their own waves. Ramadan shifts demand to the hours around iftar and suhoor, and major national and regional sale periods change promotion behaviour sharply.

Baskets

A matched basket is the foundation of any price comparison. Build it from products most apps carry, at identical pack sizes, across staples, fresh, household and personal care. Define acceptable substitutes in advance, for example another brand of the same pack size, and flag any substitution in the data. Keep a core basket constant across waves and add a rotating set for category-specific questions.

  • Staples: basmati rice 5kg, sunflower oil 1.5L, white sugar 2kg.
  • Dairy and fresh: full-fat laban 1L, eggs 30 pack, tomatoes 1kg.
  • Household: dishwashing liquid 1L, kitchen towels 2 rolls.
  • Personal care: shampoo 400ml, toothpaste 100ml.
A quick-commerce benchmark is only as good as its address grid, its time slots and its matched basket. The apps are local; the measurement has to be too.

Pitfalls to avoid

  • Single-location capture presented as a city or national view.
  • Comparing member prices on one app with public prices on another.
  • Treating a missing item as out of stock when it was never listed in that zone.
  • Ignoring fees, which can outweigh item-level price differences on small baskets.
  • Mixing web and app data. Some apps show different catalogues or prices on each.
  • Comparing waves collected in different seasons without flagging the seasonal effect.
  • Reporting delivery promises as delivery performance. The promise is what the app shows; actual delivery time is not observable from public data.

Arabic and English normalisation

GCC catalogues are bilingual, and the two languages are not always maintained in step. A product may carry a full English name and a shortened Arabic one, or the reverse. Matching across apps therefore needs normalisation in both scripts.

IssueExampleTreatment
Eastern Arabic digits٥ كجم for 5kgConvert to Western digits before parsing pack size
Unit words in Arabicغ, جم, كجم, مل, لترMap to g, kg, ml and L in a single unit table
Letter variantsأرز and ارز for riceNormalise alef forms, taa marbuta and final yaa for matching only
Brand transliterationOne brand spelt several ways in Latin scriptMaintain a brand alias table reviewed by a native speaker
Mixed-script titlesArabic name with an English brand embeddedTokenise by script and match brand and attributes separately

Keep the original text alongside the normalised version. Normalisation is for matching and analysis, while the original is what shoppers saw and what any evidence should show.

Governance and reporting

Document the address grid, time slots, basket and substitution rules for each wave, and publish them alongside any results. Report confidence alongside averages: the number of observations behind each figure, the share of substitutions and the share of items not found. Collect only public catalogue data, respect app and site terms, and avoid personal data entirely; a quick-commerce benchmark has no need for it.

Getting started

  1. State the question: price positioning, availability, service levels or assortment.
  2. Choose cities and build a zone grid with fixed sample addresses.
  3. Set time slots, including a weekend and any seasonal waves.
  4. Build and freeze the core basket, with substitution rules.
  5. Agree normalisation rules for Arabic and English names, units and digits.
  6. Run a pilot wave, review coverage and adjust before scaling.

The value of a benchmark comes from repeating it consistently. A modest design run every month will say more about the market than an ambitious one run once.

Put it into practice

See your own data before you commit.

Name the sources and fields you need. Within 24–48 hours you receive a real sample from your target sites, in your format, free of charge.

Request a free sample Talk to a data engineer Sample in 24–48 hours · NDA on request · Any format, any schedule