Keywords

1 Introduction

With nearly 1700 stores in 70+ countries and €9.8B in annual sales (2012), Zara is the flagship chain of Spain’s Inditex Group, one of the most recognized global brands worldwide, and the world’s leading fast-fashion retailer. The key defining feature of Zara’s fast-fashion retail model consists of novel product development processes and a supply chain architecture relying more heavily on local cutting, dyeing and/or sewing, in contrast with the traditional outsourcing of these activities to developing countries. While local production increases labor costs, it also provides greater supply flexibility and market responsiveness: Zara continuously changes the assortment of products displayed in its stores, and offers on average 8000 articles in a given year, compared to only 2000–4000 items for key competitors (Caro 2012). This increases Zara’s appeal to customers, who are reported to visit its stores 17 times per year on average, compared to 3–4 visits per year for competing (non fast-fashion) chains.

Zara holds a clearance period for several weeks after each of its two annual selling seasons. Due to restrictions in shipping capacity, allocation decisions for the remaining warehouse inventory start 4–6 weeks prior to the clearance period. Our work addresses the problem of dynamically coordinating inventory and pricing decisions for unsold merchandise during the last month of the regular season and then clearance sales. This problem is both important and challenging: Because of Zara’s short design-to-shelf lead times, clearance sales admittedly account for a smaller fraction (15%) of total revenue compared to more traditional retailers. This fraction of sales is comparable to Zara’s relative net margin however, so that the success of clearance sales has a substantial impact on Zara’s profits in any given season. While Zara’s end-of-season problem thus shares common features with that of a traditional retailer, it is however more challenging in some respects. Namely, the number of articles for which inventory and markdown decisions must be made is larger, with each individual article initially available in smaller quantities, and there is less historical price response data due to a lack of promotions during the regular season. The inventory allocation prior to markdowns is particularly challenging because of problem size and countries “compete” for scarce inventory. Moreover, there are many business rules that must be satisfied.

Until recently, the decision process used by Zara for end-of-season inventory allocation and clearance pricing was essentially manual and based on managerial judgment. The inventory decisions were centralized and made based on previous year sales and the markdowns in each country were handled by the country manager. There was no model supporting the inventory decision, and though all countries followed the same guidelines and were supervised by the same pricing team (which included Zara’s CFO), the markdown decisions still largely depended on the experience of individual country managers. The origins of these guidelines were mostly historical rather than being based on revenue maximization. In fact, the information made available to decision makers (e.g., days’ worth of sales left in inventory for each category) tended to promote instead the objective of minimizing unsold inventory at the end of the clearance period.

In our model-based approach, we first formulated a dynamic program corresponding to the multi-period and multi-product inventory and pricing coordination problem for a product group within a given country using revenue maximization as the objective. To overcome the curse of dimensionality, we then used the certainty equivalent technique to approximate the profit-to-go (see Gallego and van Ryzin 1994; Smith and Achabal 1998). The problem was still too large so it was further broken down into an aggregate master plan and a store-level model per-country with feedback recourse between the two levels. This approximation reduced the formulation to a sequence of linear mixed-integer programs with a shortest-path structure that could be solved efficiently by a commercial solver. The second step in our methodology was to build a price response forecasting model feeding into the optimization module. The forecast follows a two-stage procedure similar to the method described in Smith et al. (1994). For each article, first we determine the regular season demand rate using a regression model where the explanatory variables are the size of the initial purchase, the number of weeks since the product introduction, the demand rate from the previous period, and the aggregate inventory level. In the second stage, we obtain the demand residual that cannot be explained by regular season variables and regress it against the price markdowns to obtain the demand elasticity. To predict sales in the first week of the clearance period, we use the elasticity determined with data from the two most recent years. For subsequent periods, the elasticity can be computed using current data.

After a working prototype of the new pricing tool was completed, a controlled field experiment was performed during the 2012 summer clearance to estimate the model’s impact. The pilot showed that the model increased revenue by 2.5%, which is equivalent to $24M in additional revenue if the model had been used for all countries and products in 2012. This financial impact is explained by the model’s ability, relative to the legacy process, of maximizing revenue rather than getting rid of stock. Given that unsold inventory is sunk at the time of clearance sales, the additional revenue translates directly into profits. The pilot was followed by the implementation of a decision support system (DSS), which coincided with the growth of the online channel that had been launched in September of 2010 (see Caro 2012). The emergence of this new channel posed some challenges that are discussed in Sect. 5.5 and it represented Zara’s first steps into omnichannel retailing.

There are several streams of literature related to our work. At the core, there is the interplay between inventory and pricing. Elmaghraby and Keskinocak (2003) and Chan et al. (2004) provide well-cited surveys on pricing with inventory considerations. Most of the early work has been theoretical for a single item and a single location, such as in Federgruen and Heching (1999) and Chen and Simchi-Levi (2004). One notable exception is Bitran et al. (1998), which considers a single item but allows for inventory transfers across stores and the model was tested in a real setting, though it did not lead to an implementation. More recently, Craig and Raman (2016) report the implementation of a markdown model to aid store liquidation. Interestingly, this model is formulated in terms of inventory value rather than units, similar to Zara’s legacy process described in Sect. 2, and it allows for inventory consolidation and store closures. Smith and Agrawal (2017) study a similar problem for a single item and multiple stores with inventory consolidation assuming continuous deterministic demand.

The classic revenue management literature is also relevant. In this stream, pricing policies account for the remaining inventory, which gets depleted with demand but otherwise it is not an endogenous decision. Here there has been progress in modeling customer choice across multiple products. For instance, Dong et al. (2009), Akçay et al. (2010), and Li and Huh (2011) consider pricing with product substitution for a single store. Finally, the literature on transshipments ignores pricing decisions and instead focuses on inventory balancing across multiple locations in a network (see Paterson et al. 2011; Meissner and Senicheva 2018 and the references therein).

The contributions of this work to the retail operations literature can be summarized as follows:

  1. 1.

    This work constitutes an application of inventory control and revenue management to the retail business strategy of fast-fashion adopted by companies that include Zara, H&M, and Mango. This strategy involves continuously changing assortments, small production batches, and minimal in-season promotions. Its clearance pricing problem is thus particularly challenging because it involves comparatively more different articles of unsold inventory with less price data points than other retailers.

  2. 2.

    Our model coordinates inventory and pricing for multiple products and multiple locations. The implementation spans Zara’s entire product assortment and network of stores. We are unaware of any other documented implementation at a similar scale. The development and deployment of the model coincided with the launch of Zara’s online portal, which added an omnichannel dimension with its corresponding challenges.

  3. 3.

    Similar to Caro et al. (2010), the methodology followed to estimate the implementation impact involved a live pilot implementation experiment that was carefully designed to control for external factors. This rigorous methodology is remarkable because the impact of publicly described Operations Research (OR) practice work is usually estimated with more questionable “before versus after” comparisons which completely ignore the fact that many other factors besides the OR work being described may also be affecting the difference in performance observed in the “after” period.

  4. 4.

    The model has also had a substantial qualitative impact on the way country managers think about end-of-season sales, and the model output generates new discussions in which managers need to justify their inventory allocation and price decisions with stronger arguments. Finally, from a cultural standpoint this work has triggered a realization of the strategic importance of OR and revenue management within Zara/Inditex; a telling fact is that other brands within Inditex, such as Pull & Bear, are interested in using a similar tool.

The chapter is organized as follows. In Sect. 2 we describe the legacy process that Zara used to allocate inventory prior to clearance sales. In Sect. 3 we explain the demand estimation approach, and then in Sect. 4 we introduce the main optimization model to coordinate inventory and pricing decisions. In Sect. 5 we discuss several business rules and implementation challenges that had to be considered. The impact of the model is reported in Sect. 6 and we conclude in Sect. 7. Some of the data presented in this paper has been disguised to protect its confidentiality, and we emphasize that the views presented in this paper do not necessarily represent those of the companies and institutions with which its authors are affiliated. In particular, the financial and operational impact estimations provided here were performed independently by the paper’s authors and do not engage the responsibility of the Inditex Group, which advises that any forward-looking statement is subject to risk and uncertainty and could thus differ from actual results.

2 Project Genesis and the Legacy Inventory Distribution Process

The collaboration between Zara and academia started in August of 2005. The relationship was initiated by the first author of this chapter. It began with a project on how to allocate inventory during the regular season and since then it has led to several other projects that have advanced the use of business analytics in retail operations. As part of the collaboration, Zara became a member of MIT’s Leaders for Global Operations (LGO) program and more than a dozen LGO students have spent time at Zara’s headquarters working on analytics as part of their internship. More details of this collaboration between industry and academia are given in Caro et al. (2010).

Until 2012, Zara was using a manual process to allocate inventory prior to clearance sales. Here we formalize this legacy process, which was used as a benchmark for the model-based process that is introduced in the next sections. Note that the legacy distribution process takes into account customers’ price sensibility and future markdown decisions implicitly through its input parameters (for instance, see the effort estimation below). In other words, the interaction between inventory and pricing decisions is acknowledged but these decisions are not explicitly coordinated nor optimized simultaneously.

The inventory distribution process takes place prior to clearance sales. It usually starts roughly 1 month in advance during the regular season and ends at the beginning of clearance sales. For simplicity, this inventory planning period that overlaps with the regular season is denoted period 0. We first introduce the notation and define the parameters used in the legacy process. Note that this process is repeated weekly during period 0 and the parameters are updated as clearance sales approaches.

2.1 Indices and Index Sets

  • \(m \in \mathcal {M}\): countries in the distribution network.

  • \(j \in \mathcal {J}\): stores. Let m(j) denote the country of a store j. Let \(\mathcal {T}(m) \subseteq \mathcal {J}\) denote the set of stores in county m.

  • \(a \in \mathcal {A}(m)\): local warehouses in country m.

  • \(r \in \mathcal {R}\): individual articles aggregated at the model/quality level.

2.2 Parameters

  • \(\displaystyle U_j^0 = \sum _{r \in \mathcal {R}} p_{m(j)r}^T I_{rj}^0\): inventory available at store j (\(I_{rj}^0\)) valued at regular season prices (\(p_{mr}^T\)) of the respective country m(j), where T denotes the regular season.

  • \(\displaystyle U_m^0 = \sum _{a \in \mathcal {A}(m)} \sum _{r \in \mathcal {R}} p_{mr}^T I_{ar}^0\): inventory available at the local warehouses (\(I_{ar}^0\)) in country m valued at regular season prices in that country.

  • \(\displaystyle U^0= \sum _{r \in \mathcal {R}} {p}_{ \underline {m}r}^T {I}_r^0\): inventory available at the central warehouses (\({I}_r^0\)) valued at regular season prices in Spain (here \( \underline {m}\) = Spain).

  • M j: estimated shrinkage (in Spanish merma) at store j valued in EUR.

  • \(\displaystyle {V}_j^0 := V_{j,prev}^0 \left (\frac {{V}_j^{-4}}{{V}_{j,prev}^{-4}}\right )\): estimated sales (in EUR) at store j in the remaining weeks prior to clearance sales. \({V}_j^0\) is computed by cross-multiplication (rule of three). For instance, suppose the regular season has 20 weeks and there are 3 weeks left before clearance sales start. Then, \(V_{j,prev}^0\) are previous year sales in the last 3 weeks of the regular season, \({V}_j^{-4}\) are sales in the most recent 4 weeks, i.e., weeks 14–17 of the current regular season, and \({V}_{j,prev}^{-4}\) are sales in the same 4 weeks but in the previous year.

  • \(\displaystyle {V}_j := V_{j,prev} \left (\frac {{V}_j^{-4}}{{V}_{j,prev}^{-4}}\right )\): estimated sales (in EUR) at store j during clearance sales, valued at regular season prices. V j is computed by cross-multiplication just like \({V}_j^0\) except that V j,prev is the actual inventory sold in clearance sales in the previous year, valued at full price.

  • E j: effort assigned to store j, i.e., the amount of revenue that store j should generate during clearance sales (valued at regular season prices).

2.3 Determining the Effort per Store

The amount of stock available in the entire network usually exceeds the total estimated sales. Therefore, all the stores are expected to make an effort and are loaded with a surplus of inventory. The load factor ϕ is computed as follows:

$$\displaystyle \begin{aligned} \phi = \frac{U^0 + \sum_{m \in \mathcal{M}} U_m^0 + \sum_{j \in \mathcal{J}} \big(U_j^0-{V}_j^0-M_j\big)}{\sum_{j \in \mathcal{J}} V_j} > 1, \end{aligned} $$
(1)

and the effort for store j is given by

$$\displaystyle \begin{aligned} E_j = \phi V_j - \big(U_j^0-{V}_j^0-M_j\big). \end{aligned} $$
(2)

Let B m denote the total amount of inventory that should be shipped from the central warehouses to country m. From the previous definitions we have that

$$\displaystyle \begin{aligned} B_m = \sum_{j \in \mathcal{T}(m)} E_j - U_m^0. \end{aligned} $$
(3)

If B m ≤ 0, then country m already has enough inventory. It should not receive any further shipments from the central warehouse, and therefore, it is blocked. All the blocked countries are removed from the distribution process and are treated separately.

In order to take into account store sales capacity as well as the interaction between inventory and markdown decisions, a final adjustment is made to the stores in non-blocked countries. For each store j, if \(\phi V_j > \max \{U_j^0, U_{j,prev}^1\}\), where \(U_{j,prev}^1\) is the stock (in EUR) that was available at the beginning of clearance sales in the previous year, then V j is decreased by 3%. If \(\phi V_j < \min \{U_j^0, U_{j,prev}^1\}\), then V j is increased by 3%. After removing the blocked stores and making the final adjustments to V j, Eqs. (1) and (2) are recomputed.

2.4 Mathematical Formulation

Once the efforts per store have been computed, the next step is to decide how much will be procured from the central warehouses and how much from the local warehouse or from other stores that have a “negative effort.” Zara did not have an explicit rule for this, but in general transshipments were considered undesirable so they were avoided as much as possible. Here we present an optimization model that finds the solution that minimizes transshipments under the legacy process. The decision variables are denoted f j to denote the flow of inventory (in EUR) from the central warehouses to store j. Similarly, f xy represents the flow of inventory (in EUR) from x to y, where x and y are nodes in the distribution network given by local warehouses and stores. The mathematical formulation of the model is the following:

(4)
(5)
(6)
(7)
(8)

The objective function (4) is the total inventory transshipments valued at regular season prices (recall that the flows are given in EUR). Note that only transhipment within stores of the same country are allowed, though this could be easily relaxed. Constraint (5) ensures that the shipments from the central warehouses do not exceed the inventory available. The same is imposed in constraint (6) for the local warehouses. Finally, constraint (7) makes sure that the inflow to each store is greater or equal than the respective effort assigned to that store plus the outflow.

The advantage of the legacy approach was its simplicity, which facilitated its implementation. However, it had several shortcomings: (1) it was based on aggregate revenue, not on unit sales by group; (2) it ignored subsequent decisions, markdowns in particular; (3) it mostly reproduced the same allocation pattern from previous years, which was not necessarily optimal; and (4) it aimed to minimize inventory transshipments rather than maximize overall network profits. These limitations motivated the development of the model-based solution that is described next.

3 Demand Estimation

The proposed model-based solution is represented in Fig. 1. The approach consists of demand estimates that are the input to an optimization model. In this section we describe the former.

Fig. 1
figure 1

Model-based solution for coordinating inventory and markdown decisions. Figure taken from Verdugo (2010)

Demand is estimated at the article level r and for each country independently. To simplify the notation, in this section we omit the country subindex m. The estimation procedure is similar to Caro and Gallien (2012). Let w = 0 denote the remainder of the regular season, i.e., the weeks prior to clearance sales when the inventory (re)allocation takes place. Let w ≥ 1 denote the periods of clearance sales. Zara starts inventory planning for clearance sales about 4 weeks in advance. Therefore, period w = 0 can be roughly 1 month, whereas the periods w ≥ 1 during clearance sales are usually 1 week. Let \(\widetilde {\lambda }_{rk}^{w}\) be the demand rate in period w at price p k given by the equation

$$\displaystyle \begin{aligned} \widetilde{\lambda}_{rk}^{w} = \widehat{\lambda}_{r}^{w} \cdot \exp\left(\widetilde{\beta}_{4}^{w} \ln\left(\min \Bigg\{1,\frac{\widehat{I}_r^w}{f}\Bigg \}\right) + \widetilde{\beta}_{5}^{w} \ln\Bigg(\frac{p_k}{{p}_r^T}\Bigg)\right). \end{aligned} $$
(9)

where \(\widehat {\lambda }_{r}^{w}\) represents the base demand, \(\widehat {I}_r^w\) is an estimate of the inventory level at time w that is discussed in Sect. 5.4, \({p}_r^T\) is the regular season price, and f is a broken assortment parameter as in Smith and Achabal (1998).

We call \(\widehat {\lambda }_{r}^{w}\) the base demand because it has no broken assortment and pricing effects. It is updated using the recursion:

$$\displaystyle \begin{aligned} \begin{array}{rcl} \widehat{\lambda}_{r}^{0} &\displaystyle = &\displaystyle \exp\left(\widetilde{\beta}_{0r} + \widetilde{\beta}_{1} \ln(C_r) + \widetilde{\beta}_{2} A_r^{0} + \widetilde{\beta}_{3} \ln(\widehat{\lambda}_{r}^{\,T}) \right) \end{array} \end{aligned} $$
(10)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \widehat{\lambda}_{r}^{w} &\displaystyle = &\displaystyle \exp\left(\widetilde{\beta}_{0r} + \widetilde{\beta}_{1} \ln(C_r) + \widetilde{\beta}_{2} A_r^{w} + \widetilde{\beta}_{3} \ln(\widehat{\lambda}_{r}^{w-1}) \right), w > 1, \end{array} \end{aligned} $$
(11)

where C r is the size of the initial purchase, \(A_r^w\) is the number of days since article r was introduced at the stores, and \(\widehat {\lambda }_{r}^{\,T}\) is the average demand rate over the regular selling season. Note that \(\widehat {\lambda }_{r}^{0}\) should be smaller than \(\widehat {\lambda }_{r}^{\,T}\), in which case the base demand sequence \(\widehat {\lambda }_{r}^{w}\) decreases with w (this is assuming that \(\widetilde {\beta }_{2} < 0\) and \(0< \widetilde {\beta }_{3} < 1\)). Note that \(\widetilde {\beta }_{0r}, \widetilde {\beta }_{1}, \widetilde {\beta }_{2}, \widetilde {\beta }_{3}\) are parameters computed from the current regular season, whereas \(\widetilde {\beta }_{4}^{w}, \widetilde {\beta }_{5}^{w}\) are the parameters for period w obtained from previous season data. See Caro and Gallien (2012) for more details on the estimation of these coefficients.

A key parameter in the optimization model presented in the next section is the expected sales for article r in period w at price p k, denoted \(E_r^w(p_k)\). To estimate \(E_r^w(p_k)\), let \(\mathcal {S}(r)\) denote the size-color combinations available for article \(r \in \mathcal {R}\). We assume that customers demanding SKU rs at price p k at store j in period w arrive according to a Poisson process with arrival rate \(\alpha _{rsj} \widetilde {\lambda }_{rk}^{w}\), where \(\widetilde {\lambda }_{rk}^{w}\) is given by the forecast formula (9) and α rsj is the sales weight of SKU rs at store j (see Sect. 5.3 for a discussion on computing this parameter). Let \(E_{rj}^w(p_k) = \sum _{s \in \mathcal {S}(r)} {\mathbb E} \Big [Sales_{rsj}^w \Big | p_k, \widehat {I}_{rsj}^w \Big ]\), where \(\widehat {I}_{rsj}^w\) is again an estimate of the inventory level. Then, we have that \(E_r^w(p_k) = \sum _{j \in \mathcal {J}} E_{rj}^w(p_k)\). For w = 0 the price is fixed at the regular-season price \(p_r^T\), so we write \(E_{rj}^0\) and \(E_r^0\) and the calculation relies on the actual inventory levels \({I}_{rsj}^0\).

The estimation of sales for every article, period, and country is computationally intensive. The computation can be simplified by identifying a group of representative articles with ample inventory available. For this subset, the sales estimates \(E_r^w(p_k)\) are computed for every period and then country-specific decay factors are obtained by minimizing

$$\displaystyle \begin{aligned} \sum_{r,k,w \ge 2} \left(\kappa^{w-1} - \frac{E_r^w(p_k)}{E_r^1(p_k)} \right)^2. \end{aligned} $$
(12)

To avoid confusion, note that κ w−1 represents κ to the power w − 1 (in contrast with the rest of the notation, here w is not a superscript). The interpretation of the parameter κ is the decay in sales from one period to the next when the price does not change. Once κ is computed, the sales estimate for the other articles can be approximated by \(E_r^w(p_k) \approx \kappa ^{w-1} E_r^1(p_k)\).

In general, the quality of the forecast generated substantial debate at Zara. In fact, initially, the forecast error received most of the attention in the meeting discussions, but it gradually gave way to the actual inventory and pricing decisions which was the original purpose of the model. This transition was facilitated by showing through a few simple simulations that, even with an imperfect forecast, the model would still make inventory allocations that were near optimal in terms of revenue. This idea has been studied further in Besbes et al. (2010) and Elmachtoub and Grigas (2017).

4 Optimization Model

4.1 Multiple-Item Discrete-Price Formulation

The multiple-item model builds on the open-loop formulation (47) given in the appendix. The open-loop formulation is a starting point but it ignores many practical considerations that are relevant to Zara, which are here enumerated:

  • There is a discrete set of prices p 0 ≤ p 1 ≤… ≤ p K, where p 0 is the salvage value at the end of clearance sales. The number of feasible prices K is in the order of 40 for a typical product group.

  • Items are shipped from the central distribution centers located in Spain and there is a shipping cost associated that is given as a percentage c M of the selling price.

  • The inventory allocation takes place 3–4 weeks prior to the beginning of clearance sales. Therefore, the regular-season sales that take place during that remaining month must be taken into account because they deplete the inventory that will be available for clearance.

  • The inventory that is already at the store must be taken into account. Similarly, some countries might have a local warehouse that holds inventory.

  • There are multiple items in a product group. Items that had the same regular-season price form a product cluster, which is the unit of analysis for the purpose clearance sales. The price of a cluster can only decrease over time. The price hierarchy among clusters must be maintained throughout clearance sales. In other words, if cluster n had a higher regular-season price than cluster n′, then the price of cluster n′ is always equal or lower than the price of cluster n during clearance sales.

4.2 Master Problem and Discussion

The formulation of the master problem (MP) here below is for a single product group across all countries. A product group (e.g., T-shirts or woman blazers) is partitioned into product clusters \(n \in \mathcal {N}\). A cluster n corresponds to all the articles \(r \in \mathcal {R}_n\) that were sold at the same price during the regular season. We use the following notation: w = 1 and w = W represent the first and last periods of clearance sales. We use \(\mathcal {M}\mathcal {R}\) as a shorthand notation for \(\mathcal {M}\times \mathcal {R}\). Also, let \(\mathcal {W} := \{w \in \mathbb {N} : 1\le w <W\}\) and \(\mathcal {K} :=\{k \in \mathbb {N}: 1\le w \le K\}\).

For the decision variables, \(x_{mnk}^w \in \{0,1\}\) indicates whether cluster n in country m should be sold at clearance price p k or lower during pricing period \(w \in \mathcal {W}\), with \(x_{mn0}^w = 0\), for all \((m,n,w) \in \mathcal {M}\mathcal {N}\mathcal {W}\). The auxiliary variable \(y_{mnk}^w \in \{0,1\}\) indicates whether cluster n in country m should be sold at clearance price p k during period w; \({\lambda }_{mrk}^w\) represents the expected sales for article r in country m in period \(w \in \mathcal {W}\) if sold at price p k; \({\lambda }_{mr}^0\) has a similar interpretation but for the regular season; and \({I}_{mr}^w\) represents the inventory level of article r in country m in period w. In contrast to the legacy process, in this distribution model the inventory flow is expressed in terms of units (as it actually occurs in practice) instead of EUR.

(13)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \sum_{m \in \mathcal{M}} q_{mr} &\displaystyle \le &\displaystyle I_r^0 \quad \forall \ r \in \mathcal{R} {} \end{array} \end{aligned} $$
(14)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \lambda_{mr}^0 &\displaystyle \le &\displaystyle E_{mr}^0 \quad \forall \ (m,r) \in \mathcal{M}\mathcal{R} {} \end{array} \end{aligned} $$
(15)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \lambda^w_{mrk} &\displaystyle \le &\displaystyle E_{mr}^w(p_k)y^w_{mnk} \hspace{0.1cm} \forall \, (m,n,k,w) \in \mathcal{M}\mathcal{N}\mathcal{K}\mathcal{W}, r \in \mathcal{R}_n{} \end{array} \end{aligned} $$
(16)
$$\displaystyle \begin{aligned} \begin{array}{rcl} y_{mnk}^w &\displaystyle = &\displaystyle x_{mnk}^w - x_{mnk-1}^w \quad \forall \ (m,n,k,w) \in \mathcal{M}\mathcal{N}\mathcal{K}\,\mathcal{W} \qquad {} \end{array} \end{aligned} $$
(17)
$$\displaystyle \begin{aligned} \begin{array}{rcl} x_{mnk-1}^w &\displaystyle \le &\displaystyle x_{mnk}^w \quad \forall \ (m,n,k,w) \in \mathcal{M}\mathcal{N}\mathcal{K}\,\mathcal{W} {} \end{array} \end{aligned} $$
(18)
$$\displaystyle \begin{aligned} \begin{array}{rcl} x_{mnk}^{w} &\displaystyle \le &\displaystyle x_{mn+1k}^w \quad \forall \ (m,n,k,w) \in \mathcal{M}\mathcal{N}\mathcal{K}\,\mathcal{W} {} \end{array} \end{aligned} $$
(19)
$$\displaystyle \begin{aligned} \begin{array}{rcl} x_{mnk}^{w} &\displaystyle \le &\displaystyle x_{mnk}^{w+1} \quad \forall \ (m,n,k,w) \in \mathcal{M}\mathcal{N}\mathcal{K}\,\mathcal{W} {} \end{array} \end{aligned} $$
(20)
(21)
(22)
(23)
(24)

The objective function (13) is the total expected revenue until the end of clearance sales minus the shipment cost from the central warehouses. Constraint (14) ensures that the shipments made from the central warehouses do not exceed the inventory available. Constraints (15) and (16) make sure that expected sales does not exceed expected demand. Constraints (17) and (18) follow from the definition of the \(y_{mnk}^w\) and \(x_{mnk}^w\) variables. Constraint (19) ensures that the initial ordering of clusters by prices is maintained throughout the clearance period. Constraint (20) ensures that the clearance sales price for any cluster decreases over time. Constraints (21) and (22) implement the inventory dynamics. Note that the initial inventory \(I_{mr}^0\) is an input value to the optimization model and corresponds to the inventory available of article r in country m, i.e., \(I_{mr}^0 = \sum _{a \in \mathcal {A}(m)} I_{ar}^0 + \sum _{j \in \mathcal {T}(m)} I_{rj}^0\). Finally, constraints (23) and (24) impose the nonnegative and binary requirements for the decision variables.

The master problem (MP) does not explicitly consider product substitution, but some of these effects are indirectly accounted for in the model. On the one hand, horizontally differentiated products within a group usually have the same regular season price, so in the model they are indistinguishable because they belong to the same cluster n. On the other hand, vertically differentiated products belong to different clusters because the quality is different, and therefore, the regular season prices are different. Constraint (19) preserves the relation among clusters making sure that higher quality products are never cheaper than lower quality products. Note that this is consistent with the optimal structure of the pricing policy when there is substitution across vertically differentiated products, see Akçay et al. (2010).

There are some additional constraints that Zara considered to be optional for the purpose of planning the inventory allocation prior to clearance sales:

  • Minimum shipment. For some countries, there could be a minimum shipment Q m, e.g., to justify a full truckload: \(\displaystyle \sum _{r \in \mathcal {R}} q_{mr} \ge Q_m, \ \forall \ m \in \mathcal {M}\).

  • Broken assortment effect. This constraint captures the effect that the demand rate of an article usually declines when the inventory goes below a certain level f that could be country dependent:

    (25)

    where \(F_{mr}^w(p_k) = E_{mr}^w(p_k)/(\min \{1,\widehat {I}_{mr}^w/f\})^{\widetilde {\beta }_{4,m}}\) and \(\mu _m = (3\rho _m^2 + 9\rho _m)/(2\rho _m^2 + 6\rho _m + 4)\) with \(\rho _m = \widetilde {\beta }_{4,m}\). See Caro and Gallien (2012) for more details on this constraint.

  • Forced liquidation. This constraint is a way to ensure that the model liquidates at least a fraction ν of the total stock available in the network:

    $$\displaystyle \begin{aligned} \sum_{r \in \mathcal{R}} \Big(I_r^0 - \sum_{m \in \mathcal{M}} q_{mr}\Big) + \sum_{(m,r) \in \mathcal{M}\mathcal{R}} I_{mr}^W \le (1-\nu) \cdot \left(\sum_{r \in \mathcal{R}} {I}_r^0 + \sum_{(m,r) \in \mathcal{M}\mathcal{R}} {I}_{mr}^0\right). \end{aligned} $$
    (26)

Zara has stores in more than 70 countries and each product group can have hundreds of articles in a given season. Moreover, the combinations of prices and clearance periods are in the order of 400, which makes the model (MP) a large-scale optimization problem. Common aggregation techniques can be used to reduce the size of the model. For instance, constraints (14)–(16) and (21) and (22) can be aggregated by cluster, or at least the articles within a cluster that have little inventory available can be aggregated into a “meta article” (see Sect. 5.1). Alternatively, the number of feasible prices K can be reduced from 40 to about half. Note also that constraint (14) can be relaxed in a Lagrangian fashion and then the model decomposes into smaller subproblems per country. Zara used some of these techniques to speed up the computational time.

5 Business Rules and Implementation Challenges

5.1 Balanced Distribution

During the development of this project, Zara was concerned that a pure profit maximization approach could hinder fairness/equity among stores. This tension is well-documented in distribution problems, see Mandell (1991). Moreover, preliminary runs of the model showed that it had a tendency to ship most of the remaining inventory to just a few countries. Therefore, additional constraints were added to the optimization (MP) to achieve a more balanced distribution.

At the end of the season there tends to be a few articles that represent most of the inventory in each cluster. Therefore, it is important to avoid solutions that send to much inventory of the same article to a particular store. Here we will use r to represent an article for which there is abundant inventory at the warehouse. A simple rule to identify these articles would be to check whether the initial inventory at the warehouse \(I_r^0\) is greater than the number of store times the number of sizes in which r is available (intuitively, this means that there is enough inventory to send a full set of sizes—maybe of different colors—to each store). The remaining articles that do not have abundant inventory are grouped in a meta article in each cluster that we denote by r = 0. In other words, article 0 in each cluster represents the true leftovers. As an example, consider the table here below that is taken from one of the product groups. Assume that there are 1659 stores. The articles in the table are available in four sizes, so the cutoff to qualify as an article with abundant stock is 1659 × 4 = 6639. Therefore, in cluster 1590 there are only leftovers (\(\mathcal {R}_{1590} = \{0\}\)), whereas in cluster 1990 there are four abundant articles plus the leftovers (\(\mathcal {R}_{1990} = \{0, 1509/120, 264/967, 5646/200, 5646/201\}\)) (Fig. 2).

Fig. 2
figure 2

Example of two clusters. An article corresponds to a model-quality pair

For each article r, let μ r be the percentage of the initial purchase that has been sold during the regular season. For the meta article, μ 0 can be computed as a weighted average of the individual percentages. Let Sales rj be the regular season sales of article r at store j. Then, we define the overall and the country-specific share of store j for article r as follows:

$$\displaystyle \begin{aligned} \overline{d}_{mr} = \mu_r \frac{\sum_{j \in \mathcal{T}(m)} Sales_{rj}}{\sum_{j' \in \mathcal{J}} Sales_{rj'}} + (1-\mu_r) \sum_{j \in \mathcal{T}(m)} d_j, \end{aligned} $$
(27)
$$\displaystyle \begin{aligned} \overline{d}_{mrj} = \mu_r \frac{Sales_{rj}}{\sum_{j' \in \mathcal{T}(m)} Sales_{rj'}} + (1-\mu_r) d_{mj}, \end{aligned} $$
(28)

where \(\displaystyle d_j = \frac {PrevClearSales_j}{\sum _{j' \in \mathcal {J}} PrevClearSales_{j'}}\), \(\displaystyle d_{mj} = \frac {PrevClearSales_j}{\sum _{j' \in \mathcal {T}(m)} PrevClearSales_{j'}}\) and can be replaced by similar quantities at the product group level if they are available. Note that in Eqs. (27) and (28), if μ r is close to one, then more weight is given to recent sales, whereas if μ r is closer to zero, then last year’s performance has more weight.

We can now define the maximum country allocation for article r:

$$\displaystyle \begin{aligned} b_{mr} = \Bigg[\bigg({I}_r^0 + \sum_{m' \in \mathcal{M}} {I}_{m'r}^0 \bigg)\overline{d}_{mr} - {I}_{mr}^0 \Bigg]^+ \quad \forall \, m \in \mathcal{M}. \end{aligned} $$
(29)

If b mr is less than the minimum shipment quantity, then we redefine it and make it equal to the minimum shipment. If b mr = 0, then that country is removed from the allocation. For the countries that remain, we recompute b mr using Eq. (29). The balanced distribution is attained by adding the following constraint to the model (MP):

(30)

where the parameter σ was added as a lever to allow the user to expand the feasible set if desired. Note that if a country has plenty of stock, i.e., \(I_{mr}^0\) is very high, then it is effectively blocked, which is similar to the rationale of blocking countries in the legacy process (see Sect. 2) but at the article level.

5.2 Disaggregation Model

The disaggregation model (DG mr) here below must be solved for each article r within a product group, and for each country m (it could also be solved at a more aggregate level for each cluster n). In what follows, we consider a fixed pair (m, r) and let n(r) be the cluster of article r. The additional parameters, decision variables, and the model formulation are introduced next.

Additional Parameters

  • Y mnj: historical realized income for cluster n at store j in previous clearance sales. The realized income measures the ratio of the actual revenue from clearance sales to the maximum revenue achievable by selling the inventory at regular season prices, see Caro and Gallien (2012).

  • \(\displaystyle E_{rj} := \sum _{w \ge 1} \sum _{k \in \mathcal {K}} E_{rj}^w(p_k)\, y_{m(j)n(r)k}^{*\,w}\): expected sales of article r at store j during the markdown period, where \(y_{mnk}^{*\,w}\) comes from the solution of the master problem (MP).

  • \(q_{mr}^*\): total shipment quantity allocated to country m. This parameter comes from the solution to the aggregate master problem (MP).

  • \(\displaystyle b_{rj} := \Bigg [\bigg (q_{mr}^* + {I}_{m(j)r}^0 \bigg )\overline {d}_{m(j)rj} - {I}_{rj}^0 \Bigg ]^+\): maximum store allocation of article r to store j, where \(\overline {d}_{mrj}\) is defined in Eq. (28).

Decision Variables

  • q rj: shipment quantity (in units) for article r from the central warehouses to store j.

  • q mrj: shipment quantity (in units) for article r from the local warehouses in country m (if they exist) to store j.

  • \(q_{j r j'}\): transhipment quantity for article r between stores j and j′.

  • \({\lambda }_{rj}^0, {\lambda }_{rj}\): sales of article r at store j in period w = 0 and during clearance sales, respectively.

Formulation

(31)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \sum_{j \in \mathcal{T}(m)} q_{mrj} &\displaystyle \le &\displaystyle \sum_{a \in \mathcal{A}(m)} I_{ar}^0 \quad {} \end{array} \end{aligned} $$
(32)
$$\displaystyle \begin{aligned} \begin{array}{rcl} {q}_{rj}^0 &\displaystyle = &\displaystyle q_{rj} + q_{mrj} + \sum_{j' \in \mathcal{T}(m)} \big(q_{j'rj} - q_{jrj'} \big) \quad \forall j \in \mathcal{T}(m) \\{} \end{array} \end{aligned} $$
(33)
$$\displaystyle \begin{aligned} \begin{array}{rcl} {I}_{rj} &\displaystyle = &\displaystyle {I}_{rj}^0 + {q}_{rj}^0 - {\lambda}_{rj}^0 \quad \forall j \in \mathcal{T}(m) {} \end{array} \end{aligned} $$
(34)
$$\displaystyle \begin{aligned} \begin{array}{rcl} {\lambda}_{rj}^0 &\displaystyle \le &\displaystyle {E}_{rj}^0 \quad \forall \ j \in \mathcal{T}(m) {} \end{array} \end{aligned} $$
(35)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \lambda_{rj} &\displaystyle \le &\displaystyle {E}_{rj} \quad \forall \ j \in \mathcal{T}(m) {} \end{array} \end{aligned} $$
(36)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \lambda_{rj} &\displaystyle \le &\displaystyle I_{rj} \quad \forall \ j \in \mathcal{T}(m) {} \end{array} \end{aligned} $$
(37)
$$\displaystyle \begin{aligned} \begin{array}{rcl} {q}_{rj}^0 &\displaystyle \le &\displaystyle b_{rj} \quad \forall \ j \in \mathcal{T}(m) {} \end{array} \end{aligned} $$
(38)
$$\displaystyle \begin{aligned} \begin{array}{rcl} \sum_{j \in \mathcal{T}(m)} q_{rj} &\displaystyle \le &\displaystyle q_{mr}^* \quad {} \end{array} \end{aligned} $$
(39)
$$\displaystyle \begin{aligned} \begin{array}{rcl} {\lambda}_{rj}, {\lambda}_{rj}^0, q_{rj}, q_{mrj}, q_{jrj'}, I_{rj} &\displaystyle \ge &\displaystyle 0 \quad \forall j,j' \in \mathcal{T}(m).{} \end{array} \end{aligned} $$
(40)

The disaggregation model is a maximization problem that accounts for store transhipment, similar in spirit to the legacy model (LGCY ). The objective function (31) is the expected revenue minus the total transportation and handling cost due to shipping from the warehouses (c M) and transshipments between stores (c S). Constraint (32) ensures that the shipments from the local warehouses do not exceed the inventory available. Constraint (33) defines \({q}_{rj}^0\), which is an auxiliary variable that represents the net quantity of article r received at store j (note that this variable could be negative meaning that store j sends inventory rather than receives). Constraint (34) is an inventory balance equation. Equations (35)–(37) are newsvendor-type constraints for sales. Constraint (38) ensures a balanced distribution as discussed in Sect. 5.1. Constraint (39) dictates that the total amount shipped to the stores cannot exceed the quantity allocated to country m according to the solution of the master problem (MP). Finally, the nonnegativity of the decision variables is imposed in constraint (40).

Note that the disaggregation model could be formulated at the SKU (color/size) level. However, Zara opted to solve it at the article level and then the warehouse team would use its own procedure to break down the quantities to color and sizes. Either way, the output of the disaggregation step is the inventory allocation \(q_{rsj}^*\) for each store.

5.3 Disaggregation Factors

The demand rate estimation in Sect. 3 is for each article r. This rate needs to be disaggregated to the store and SKU (color/size) level. For that, the idea is to capture the stores that do better during clearance sales, which are not always the same than those that sell well during the regular season. Note that for a new stores, an equivalent store has to be defined.

Let PrevClearSales j be the sales by store j in the previous clearance sales a year ago. The disaggregation factors that are used to disaggregate the demand rate to the store and SKU level are the following:

$$\displaystyle \begin{aligned} \alpha_{rsj} = \frac{\sum_{w<\widetilde{w}, j \in \mathcal{J}} Sales_{rsj}^w}{\sum_{w<\widetilde{w}, s \in \mathcal{S}(r), j \in \mathcal{J}} Sales_{rsj}^w} \cdot \frac{PrevClearSales_j}{\sum_{j \in \mathcal{J}} PrevClearSales_j}, \end{aligned} $$
(41)

where \(\widetilde {w}\) is the current (or most recent) regular season period and \(\mathcal {S}(r)\) represents the set of color-size combinations available for article r. Note that the rightmost ratio depends only on j so it can be computed separately for all SKUs. A few remarks:

  • The quantity PrevClearSales j represents sales in units, but it could also be defined in terms of EUR, which would be closer to how it is done in the legacy process described in Sect. 2.

  • One could also define PrevClearSales gj as the previous year sales for each group g at store j and use this value in the rightmost ratio in Eq. (41). For new stores one would have to define equivalent stores at the group level.

  • An alternative is to define PrevClearSales j as the clearance sales in the past 2 years. Again, the complication would be those stores that have been open less than 2 years.

  • For articles that have little sales data, i.e., for which most of the inventory is still at the warehouse, the disaggregation factor can be redefined in the following way:

    $$\displaystyle \begin{aligned} \alpha_{rsj} = \frac{ {I}_{rs}^0 + \sum_{w<\widetilde{w}, j \in \mathcal{J}} Sales_{rsj}^w}{\sum_{s \in \mathcal{S}(r)} {I}_{rs}^0 + \sum_{w<\widetilde{w}, s \in \mathcal{S}(r), j \in \mathcal{J}} Sales_{rsj}^w} \cdot \frac{PrevClearSales_j}{\sum_{j \in \mathcal{J}} PrevClearSales_j}. \end{aligned} $$
    (42)

    Note that the sum \(\sum _{s \in \mathcal {S}(r), j \in \mathcal {J}} \alpha _{rsj}\) still adds to one for all \(r \in \mathcal {R}\).

5.4 Iterative Allocation

Obtaining an estimate of the inventory \(\widehat {I}_r^w\) at time w is a significant challenge. A first approximation is to replace sales with its expected value at regular season prices, in which case \(\widehat {I}_r^w = \max \big \{\widehat {I}_r^{w-1} - E_r^{w-1}(p_r^T), 0 \big \}\). This approximation ignores the inventory allocation that takes place prior to clearance sales. Therefore, the solution of the model \(q_r^*\) can be used to update \(\widehat {I}_r^{\,1} = \max \big \{{I}_r^0 + q_r^* - E_r^0, 0 \big \}\), and then the model can be run again (recall that the country subindex m is omitted in Sect. 3 so \(q_r^*\) stands for \(q_{mr}^*\)).

The computation of \(\widehat {I}_{rsj}^w\) is even more involved. A simple but somewhat crude approach is to apply the disaggregation factors α rsj to the inventory estimates \(\widehat {I}_r^w\). An alternative, that was favored by Zara, is to first assume that inventory levels will remain constant at the initial levels, i.e., \(\widehat {I}_{rsj}^w = {I}_{rsj}^0\), for all periods. This first approximation again ignores the inventory (re)allocation from the optimization model. Therefore, a re-estimation is necessary, at least for the first period. Namely, \(\widehat {I}_{rsj}^{\,1} = \max \Big \{{I}_{rsj}^0 + q_{rsj}^* - {\mathbb E} \big [Sales_{rsj}^0 \big | p_{m(j)r}^T, {I}_{rsj}^0 \big ], 0 \Big \}\), where \(q_{rsj}^*\) is the output of the disaggregation step described in Sect. 5.2.

The iterative procedure described above essentially assumes an inventory trajectory \(\widehat {I}_r^w\) and produces an inventory allocation q r, which is then used to update the estimated inventory levels. Hence, the procedure can be seen as solving a fixed point problem in q r. We did not explore the theoretical validity of this approach, but in practice it worked very well. In fact, in our runs in the test pilot the inventory allocation did not change much after the second iteration. Therefore, in the final implementation only two iterations of the procedure were performed.

5.5 Online Stores

In 2010 Zara launched its online channel. That happened right in the middle of the project on coordinating inventory and clearance sales markdowns described in this chapter. Therefore, there was the challenge of incorporating the new channel in the model-based process. At the time, Zara had three warehouses for online sales: EZ-Japan, EZ-Usa, and EZ-Rest. Initially, each one of these warehouses was treated as another store in Spain, and therefore in the model they were subject to the prices and markdowns suggested for Spain. However, as more country-specific warehouses were opened, Zara started treating each one of these inventory locations as an additional store in the corresponding country. This strategic decision meant that prices in both channels (online and offline) would be the same within each country.

In the past, product returns had been accounted as negative sales that were subtracted from the total sales. However, returns increased with the introduction of the online channel, so it became important to separate returns from actual sales. Otherwise, the model would allocate too little inventory to the online stores. For this reason, extra safety stock was added in the initial years for precaution.

The addition of the online channel to the model happened seamlessly. Remarkably, most of the online sales in the initial years came from cities or towns that did not have Zara stores, which meant that there was little cannibalization between the online and brick-and-mortar channels. Eventually, there could be some degree of channel shift as online shopping becomes more prevalent, but this effect is likely to be outweighed by the potential synergistic benefits of omnichannel retailing, as shown in Gallino and Moreno (2014).

6 Model Impact

The first test of the model’s impact consisted in a dry run in which the model-based solution was run in parallel to the legacy process described in Sect. 2. We compared the inventory allocations recommended by each approach as well as the forecast errors across all the countries. The results are summarized in Fig. 3. There are two main observations that stand out. First, in 67% of the countries the model-based solution had a smaller forecast error than the legacy process, which showed a gain in prediction accuracy. Second, for about 79% of the countries the model-based solution allocated more inventory than the legacy process. These were mostly smaller countries, which showed the model’s ability to achieve a more balanced distribution (see the discussion in Sect. 4).

Fig. 3
figure 3

Dry-run results. Comparison of the model-based solution versus the legacy process (percentages with respect to the total number of countries)

After a working prototype of the new allocation tool was completed, a controlled field experiment was performed during the 2012 summer clearance to estimate the model’s impact. The overall product assortment was split in 20 groups. The model was used to make inventory and pricing decisions for groups 1–12 for all the stores in Belgium, whereas for groups 13–20 decisions were made manually using the legacy process. We did the opposite in Holland—i.e., groups 13–20 were managed using the model—in order to remove any factors specific to the group choice in each country. Groups 1–12 can be described as classic designs for women above twenty, whereas groups 13–20 are more fashionable products targeted to a younger audience. Products in groups 1–12 are usually more expensive and are known to sell better in winter clearance. In contrast, groups 13–20 have mostly cheaper products and sales do better in summer. The legacy process was used for all groups in the rest of the countries (i.e., all countries but Belgium and Holland).

Similar to Caro and Gallien (2012), the main metric used to measure performance was the realized income ratio (Y ), defined as the revenue generated during the end of the season and clearance sales over the valuation of initial inventory at regular season prices. For each store in Western Europe we computed the difference between the total realized income ratio in groups 1–12 (denoted Y 1−12) minus the same metric in groups 13–20 (denoted Y 13−20). This allowed removing store-specific factors that are not attributable to the model. We averaged the differences across all stores in Belgium to remove random factors (e.g., due to the forecast error). We did the same in Holland, and then for all the other stores in the rest of Western Europe (RWE). The latter represented the baseline. Therefore, by taking the difference between the averages in Belgium and in RWE we obtained an estimate of the model’s impact in groups 1–12. Doing the same between Holland and RWE gave the impact in the remaining groups.

The results of the pilot are shown in Table 1. The difference in the last column is the main point of interest. As expected, this difference was positive for Belgium and negative for Holland, and it showed that the model-based approach improved the realized income ratio by 1.8 and 0.5 percentage points in Belgium and Holland, respectively. The disparate magnitude of the effects (1.8 versus 0.5) was attributed to the fact that groups 13–20 tend to sell better in summer as shown by the negative baseline (− 1.9). To confirm this hypothesis, the same experimental design was repeated in 2012 winter clearance. The results of this second pilot are also shown in Table 1. We observed that the baseline turned positive (5.1), the sign of the difference in the last column remained the same for Belgium and Holland, but the magnitude of the effects reversed between the two countries as we had expected. Hence, the model had a higher impact (in percentage points) for the groups that were harder to sell, i.e., groups 1–12 in summer and groups 13–20 in winter.

Table 1 Pilot results (in percentage points)

The pilot in summer 2012 showed that the model increased the Y  metric by 1.2 percentage points on average, which was equivalent to a 2.5% increase in overall revenues. This result motivated the full-scale implementation of a DSS, which became operational in summer 2014; see Appendix 2 for some screenshots of the system. In order to validate the impact of the model, we used data prior to 2014 to run a simple linear regression in which the dependent variable was the inventory available for allocation (in EUR) divided by the total number of stores and the independent variable was the revenue generated at the end of the season and clearance sales divided by the total units shipped in preparation for the clearance period. We used the estimated coefficients to predict the revenue in summer 2014 and compared it to the actual revenue. Remarkably, the latter was 2.6% higher than the prediction, which confirmed the results obtained in the pilot. Another important observation is that the inventory left over at the warehouse was small and comparable to the amount that had to be salvaged in prior years under the legacy process (Fig. 4).

Fig. 4
figure 4

Predicted versus actual revenue in summer 2014. Axis values are omitted for confidentiality reasons

7 Conclusions

This chapter describes a model-based process to allocate stock in anticipation of clearance sales. The model effectively coordinates inventory and pricing decisions. The model’s impact versus the legacy process was estimated at 2.5% of revenues, which led to the implementation of a DSS that is currently used at Zara.

There are several other differences and benefits of the model-based solution in comparison with the legacy process. First, it finds the global optimum across all countries and stores, instead of many local optima, and it has more granularity because it makes shipment decisions at the article-store level. Second, the model allocates inventory to maximize revenue (as opposed to just liquidating stock) and it incorporates differences in price and elasticity across countries. The model also provides a scalable process and homogeneous decision criteria. Finally, Zara’s strategic choice of in-house model development has strengthened the company’s business analytics capabilities.

Our model, as any model, is an approximation and is based on assumptions. Therefore, we hope that this chapter can stimulate future research on inventory and pricing coordination and related topics. One important area for further study is explicitly incorporating substitution effects in the demand estimation and the optimization model. Considering price-based substitution can already be challenging because it requires more advanced choice models or estimating cross-elasticities. Stockout-based substitution complicates matters even further as substitution can happen within the same stores for different products or across stores for the same product. The latter is studied in Ergin et al. (2018) for brick-and-mortar stores. With the emergence of omnichannel retailing, substitution across channels will have to be taken into account. A related open research question is whether pricing policies should be the same or should differ across channels. Zara opted for the former, which facilitated the addition of the online channel to the allocation model, but the pros and cons could be studied further (Caro et al. 2019).