# Checkout conversion optimization

Your checkout is the most important page in your store. Every percentage point of lift is real money. Here's what works specifically in the Algerian market.

## Benchmarks

These are external reference figures for the Algerian market, not numbers DZBuild reports:

| Stage                      | Algerian average | Top quartile |
| -------------------------- | ---------------- | ------------ |
| Visitor → ViewProduct      | 30–50 %          | 60 %+        |
| ViewProduct → AddToCart    | 8–15 %           | 20 %+        |
| AddToCart → Checkout       | 50–70 %          | 80 %+        |
| Checkout → Confirmed order | 50–70 %          | 80 %+        |

There is no funnel chart in DZBuild

DZBuild's own [analytics](https://dzbuild.com/docs/marketing/analytics.md) do not break traffic down per funnel stage. What you get on the dashboard is a set of KPI tiles (revenue, orders, average order value, visitors and a single conversion-rate figure), revenue and visitors over time, orders by hour and by status, top products, device breakdown, traffic sources and top wilayas. For real per-step funnel data, use your [Pixel](https://dzbuild.com/docs/marketing/pixels.md)'s Events Manager. Enterprise stores with the Advanced Analytics addon also get a link out to a hosted analytics dashboard that includes funnel reports.

## Top levers, ranked by impact

### 1. Turn on Fast Checkout

The biggest lever is not optimizing the checkout page — it's skipping it. **Fast Checkout** puts the order form directly on the product page, so a buyer can order without ever reaching `/checkout`.

Configure it in **Customize → Product page**:

* Show / hide the Fast Checkout form (on by default)
* Custom form title
* Hide the address field
* Single-column layout
* Show the order-notes field

It is also a reorderable product-page section, so you can move it above the description. Fast Checkout is on by default on every plan. Hiding it and changing its title, button text or colours need the **Pro plan or higher**; the address, single-column and notes toggles work on every plan.

This is the top lever because it removes a whole page from the path between "I want it" and "order placed".

### 2. Show "Cash on Delivery" prominently

Algerian buyers trust COD. Show the badge above the fold and in the cart. Don't bury it in fine print.

### 3. Reduce form fields

Every field you ask for is one more reason to give up. On DZBuild's checkout, name, phone, wilaya and commune are always required; **email is already optional by default**.

Three toggles in **Customize → Checkout** (**Pro plan or higher**) remove fields entirely:

* **Hide email**
* **Hide address**
* **Hide notes**

The address field also stops being required by itself the moment the customer picks desk delivery (or a pickup point), so you don't have to hide it for desk-heavy stores. Whether a home order needs an address at all is a switch: on the product-page form it is off by default (**Require the address** under the hide-address switch in Customize → Product page), on the checkout page it is on by default (same place, Checkout page section). Both are enforced when the order is saved, not only in the browser.

### 4. Keep your shipping rates and delivery estimates accurate

Checkout already shows the shipping cost the moment a wilaya is picked, along with the delivery-days estimate — there is nothing to enable. What you control is at [`/dashboard/shipping`](https://dzbuild.com/dashboard/shipping): the home and desk price per wilaya, whether each delivery type is available per wilaya, and the delivery-days estimate that renders next to it. Wrong numbers there are what surprises customers at the last step. Use [Custom Product Shipping](https://dzbuild.com/docs/addons/custom-product-shipping.md) if your products have very different shipping costs.

One more number to know about: if a product carries a weight, the courier's own weight surcharge is applied on top of your wilaya rate. That rule belongs to the courier, DZBuild only applies it. If you do not want it on a given product, leave that product's weight empty or set free shipping on it.

### 5. Run AR + FR

Make sure your checkout copy is in both languages with the [Multi-Language add-on](https://dzbuild.com/docs/addons/multi-language.md) (**Unlimited plan**).

### 6. Offer stop-desk delivery, and pickup if you have a shop

Plenty of Algerian buyers would rather collect from a desk than wait at home. Without a desk option you lose them. Activate the [Stop Desk add-on](https://dzbuild.com/docs/addons/stop-desk.md) for the structured picker.

If you have a physical shop, the **Pickup from Store** addon adds a third delivery option beside home and desk: customers in the wilayas you cover collect the order from your address with **no delivery charge at all**. It shows up at checkout, on the product page and on landing pages. Requires the **Unlimited plan**.

### 7. Add reviews

A product page with no reviews at all gives a first-time buyer nothing to go on. Activate the [Product Reviews add-on](https://dzbuild.com/docs/addons/product-reviews.md) and get the first few in place.

### 8. Guest checkout — already the only option

DZBuild storefronts have **no customer accounts at all**, so a forced login is impossible. There is nothing to check and nothing to switch off.

### 9. Raise AOV with Cross-Sell

The real add-on-value lever is **Cross-Sell — Frequently Bought Together** (**Pro plan and above**). It fires **after** the order is submitted: the customer sees a "frequently bought together" popup, taps + on a product, confirms, and it is added directly to the same order — which you then confirm with them by phone. Related products can be set per product manually or auto-related by category and best sellers.

Note that the [Offer Variant Popup add-on](https://dzbuild.com/docs/addons/offer-variant-popup.md) is **not** an upsell — it only turns the cramped per-piece variant selector for multi-quantity offers into a modal. It belongs in the mobile/UX lever below.

### 10. Optimize for mobile

Most of your traffic arrives on a phone. Check the device breakdown on your dashboard for your own split, then test on a real phone rather than a desktop preview:

* Buttons ≥ 44px tall
* No horizontal scrolling
* Form fields use `tel` for phone, `email` for email
* Photos load fast (the [Image Cadre add-on](https://dzbuild.com/docs/addons/image-cadre.md) helps)
* Use the [Offer Variant Popup add-on](https://dzbuild.com/docs/addons/offer-variant-popup.md) so multi-piece variant pickers aren't cramped on a phone

### 11. Speed

Pages must load in under 2 seconds on 4G. Run [PageSpeed Insights](https://pagespeed.web.dev). Heavy images are usually the culprit; DZBuild serves optimized WebP images automatically, which handles most of this.

## What backfires in Algeria

* **Free shipping above threshold** — Algerian buyers compare absolute prices. They'd rather see *5000 DZD + 0 shipping* than *4500 + 500*. Set product prices accordingly.
* **Countdown timers on the cart** — feels manipulative. The [countdown urgency](https://dzbuild.com/docs/addons/overview.md#always-on-built-ins) built-in is best used as a low-key banner, not a screaming popup.
* **"Only 2 left in stock" warnings** — works in some markets, eye-roll in Algeria. Use sparingly, ideally only when actually true.
* **Pop-up newsletter signups** — Algerians don't open marketing emails much. Skip.

Card payment isn't a choice you make

On a physical store, DZBuild's checkout is **COD-only by construction**: there is no payment selector to get wrong. SlickPay, which you use to pay for your own subscription and AI credits, never appears at a physical store's checkout. Only digital-product stores get buyer payment methods, configured at [`/dashboard/digital/payment`](https://dzbuild.com/dashboard/digital/payment): manual CCP / BaridiMob / RedotPay transfers, with or without a receipt upload, or CIB / EDAHABIA card payment through your own Slick-Pay account.

## Trust signals that work

* Verified-purchase reviews ([Product Reviews](https://dzbuild.com/docs/addons/product-reviews.md))
* COD badge near the order button
* Real photos of your products (not stock images)
* Phone number visible in the footer
* Wilaya-specific delivery time on the cart page

## Filtering fake and bot orders

Fake orders don't hurt conversion, they hurt your courier return rate — but they come from the same checkout, so handle them here:

* **[Captcha Protection](https://dzbuild.com/docs/addons/captcha-protection.md)** (**Pro plan**): a bot check on every order form. Only the default **Normal** level is invisible to customers. **High** also blocks VPN / proxy / Tor visitors, and genuine buyers have been rejected on it, so if you switch to High, watch your order count and go back to Normal the moment it drops. The **Aggressive** level shows the customer a challenge to solve at submit time, which is a real conversion cost, so only use it while under attack.
* **[Limit Orders Per IP](https://dzbuild.com/docs/addons/limit-orders-per-ip.md)** (free) — caps how many orders one IP can place in a time window. Stops repeat prank orders.
* **Minimum & Maximum Quantity Per Product** (free) — per-product min/max order quantity, enforced on the storefront, fast checkout and landing pages. Stops absurd-quantity orders that waste courier slots.

## Measuring changes

Run **one change at a time**. For checkout and product-page changes, test sequentially: ship the change, leave it running a full week, then compare against the previous equivalent week using the dashboard KPI tiles or your Pixel data. Algerian traffic skews to weekends, so a Tuesday-to-Thursday sample is biased. Always compare whole weeks.

Landing pages are the exception. The [A/B Testing add-on](https://dzbuild.com/docs/addons/ab-testing.md) (**Pro plan**) gives you a real traffic splitter: it rotates visitors of one test link between 2 to 5 landing pages, counts the orders each one produced, and sends everyone to the winner once you pick it. Checkout itself has no splitter, so the sequential method above is what you have for the rest of the store.

Watch:

* Conversion rate and orders (dashboard KPI tiles)
* AOV (for cross-sell and offer-related changes)
* Mobile vs. desktop conversion (device breakdown)
* Per-step drop-off in your [Pixel](https://dzbuild.com/docs/marketing/pixels.md)'s Events Manager

## Resources

* [Captcha Protection](https://dzbuild.com/docs/addons/captcha-protection.md) — filters bots and fake orders (Pro)
* [Limit Orders Per IP](https://dzbuild.com/docs/addons/limit-orders-per-ip.md) — caps orders per IP (free)
* [Multi-Language](https://dzbuild.com/docs/addons/multi-language.md) — AR + FR storefront
* [Product Reviews](https://dzbuild.com/docs/addons/product-reviews.md) — trust signals
* [Offer Variant Popup](https://dzbuild.com/docs/addons/offer-variant-popup.md) — cleaner multi-piece variant picker
* [Stop Desk](https://dzbuild.com/docs/addons/stop-desk.md) — desk pickup picker
* [Custom Product Shipping](https://dzbuild.com/docs/addons/custom-product-shipping.md) — per-product shipping overrides
