Skip to content
Product cover

Successful Build-to-Order Strategies Start With the Customer

All companies would like to offer custom products that delight their customers. For many, the challenges seem overwhelming, and they settle for manufacturing standard products in bulk, guided by long-term forecasts. Because demand is rarely forecast correctly, companies miss potential sales and must pay to store and manage excess product. In an effort to purge inventory, they offer discounts and other incentives. Profits erode, and the companies lose sight of what customers really want.

Some companies attempt to offset those effects by optimizing pieces of the value chain. They create island solutions, such as lean factories, believing that such initiatives will make them more responsive. The authors argue that those efforts ultimately fail because they are not customer- centered. Citing results from their research, sponsored by the 3DayCar Programme at Cardiff Business School in Wales and the International Motor Vehicle Program at MIT, they show that island solutions sometimes backfire because they degrade other parts of the value chain.

Instead, they urge companies to aim for a true build-to-order strategy, in which managers systematically improve the value chain’s flexibility in three areas: process, product and volume. Because the emphasis at each stage is on how to meet customer demands efficiently, optimization becomes more holistic and ultimately more profitable.

To improve process flexibility, companies can link customer requirements directly to production, synchronizing customer-oriented production schedules in real time with suppliers. To improve product flexibility, they can push customization closer to the customer and can use common support structures to reduce the impact of product variety. To improve volume flexibility, the authors suggest ways companies can reduce reliance on full capacity or use differentiated pricing to reward customers for ordering products well in advance.

The authors urge managers not to settle for halfhearted transitions to build to order. They recommend two critical first steps: First, understand key aspects of customer demand; second, adjust all processes accordingly. Only then can companies truly implement responsiveness across the value chain.

Purchase Options

Educator and Student Discounts Available. Learn more »

  BENCHMARKS  
Loading Time: Base Classes  0.0010
My Controller Construct  0.0005
Build Nav  0.0006
Controller Execution Time ( Products / Route )  0.0594
Total Execution Time  0.0604
  GET DATA  
No GET data exists
  MEMORY USAGE  
1.5710 MB
  POST DATA  
No POST data exists
  URI STRING  
store/successful-build-to-order-strategies-start-with-the-customer
  CLASS/METHOD  
products/route
  DATABASE:  MITSLOAN_DEV   QUERIES: 69  (Hide)
0.0004  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0002  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0002  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0003  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0002  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0007  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0004  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0004  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0002  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0001  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0062  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0040  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0003  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0003  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0007  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0008  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0003  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0002  

SELECT *
FROM (`carts`)
WHERE `cart_id` =  '365916d63fc3c7d1a0146b93d960b3f9'
ORDER BY `created_atDESC 
0.0002  

SELECT SQL_CALC_FOUND_ROWS cat_id
FROM 
(`product_categories`)
WHERE `status_id` =  'A'
AND `url_friendly` =  'successful-build-to-order-strategies-start-with-the-customer'
AND `parent_id` =  
0.0086  

SELECT c.parent_idc.format_id
                    FROM products 
AS pproducts AS c
                    WHERE p
.prod_id c.parent_id AND
                        
c.avail_id IN ('A','B','D') AND
                        
c.type_id 'V' AND
                        (
                            
c.sku 'successful-build-to-order-strategies-start-with-the-customer' OR
                            if(
c.format_id 'Certificate'''p.url_friendly) = 'successful-build-to-order-strategies-start-with-the-customer'
                        
)
                    
LIMIT 1 
0.0002  

SELECT `parent_id`
FROM (`products`)
WHERE `prod_id` =  1991 
0.0002  

SELECT *
FROM (`products`)
WHERE `products`.`prod_id` =  '1991' 
0.0003  

SELECT *
FROM (`authors`)
JOIN `products__authorsON `authors`.`author_id` = `products__authors`.`author_id`
WHERE `products__authors`.`prod_id` =  '1991'
ORDER BY `sortAS
0.0002  

SELECT `cat_id`
FROM (`product_categories__products`)
WHERE `prod_id` =  '1991' 
0.0001  

SELECT *
FROM (`product_flags__products`)
WHERE `prod_id` =  '1991' 
0.0001  

SELECT `sku`
FROM (`products__xsell`)
WHERE `prod_id` =  '1991'
ORDER BY IF(position 010) AS, `position
0.0128  

SELECT `products`.`parent_id`
FROM (`transaction_lines`)
JOIN `productsON `products`.`sku` = `transaction_lines`.`sku`
JOIN `product_categories__productsON `products`.`parent_id` = `product_categories__products`.`prod_id`
WHERE `products`.`avail_id` =  'A'
AND TO_DAYS(transaction_lines.updated_at) < (TO_DAYS(NOW()) - 90)
AND `
product_categories__products`.`cat_idIN ('248') 
GROUP BY `products`.`parent_id`
ORDER BY COUNT(*) DESC
LIMIT 6 
0.0003  

SELECT `parent_id`
FROM (`products`)
WHERE `prod_id` =  '2343' 
0.0003  

SELECT *
FROM (`products`)
WHERE `products`.`prod_id` =  '2343' 
0.0004  

SELECT *
FROM (`authors`)
JOIN `products__authorsON `authors`.`author_id` = `products__authors`.`author_id`
WHERE `products__authors`.`prod_id` =  '2343'
ORDER BY `sortAS
0.0003  

SELECT `parent_id`
FROM (`products`)
WHERE `prod_id` =  '217' 
0.0002  

SELECT *
FROM (`products`)
WHERE `products`.`prod_id` =  '217' 
0.0005  

SELECT *
FROM (`authors`)
JOIN `products__authorsON `authors`.`author_id` = `products__authors`.`author_id`
WHERE `products__authors`.`prod_id` =  '217'
ORDER BY `sortAS
0.0001  

SELECT `parent_id`
FROM (`products`)
WHERE `prod_id` =  '3775' 
0.0002  

SELECT *
FROM (`products`)
WHERE `products`.`prod_id` =  '3775' 
0.0002  

SELECT *
FROM (`authors`)
JOIN `products__authorsON `authors`.`author_id` = `products__authors`.`author_id`
WHERE `products__authors`.`prod_id` =  '3775'
ORDER BY `sortAS
0.0001  

SELECT `parent_id`
FROM (`products`)
WHERE `prod_id` =  '2699' 
0.0001  

SELECT *
FROM (`products`)
WHERE `products`.`prod_id` =  '2699' 
0.0002  

SELECT *
FROM (`authors`)
JOIN `products__authorsON `authors`.`author_id` = `products__authors`.`author_id`
WHERE `products__authors`.`prod_id` =  '2699'
ORDER BY `sortAS
0.0001  

SELECT `parent_id`
FROM (`products`)
WHERE `prod_id` =  '2723' 
0.0002  

SELECT *
FROM (`products`)
WHERE `products`.`prod_id` =  '2723' 
0.0002  

SELECT *
FROM (`authors`)
JOIN `products__authorsON `authors`.`author_id` = `products__authors`.`author_id`
WHERE `products__authors`.`prod_id` =  '2723'
ORDER BY `sortAS
0.0001  

SELECT `parent_id`
FROM (`products`)
WHERE `prod_id` =  '655' 
0.0002  

SELECT *
FROM (`products`)
WHERE `products`.`prod_id` =  '655' 
0.0002  

SELECT *
FROM (`authors`)
JOIN `products__authorsON `authors`.`author_id` = `products__authors`.`author_id`
WHERE `products__authors`.`prod_id` =  '655'
ORDER BY `sortAS
0.0004  

SELECT SQL_CALC_FOUND_ROWS media_idposition
FROM 
(`media`)
WHERE `foreign_key_table` =  'products'
AND `foreign_key_column` =  'prod_id'
AND `foreign_key_value` =  '1991'
AND `kind` =  'image_600x600'
ORDER BY IF(position 010) AS, `position
0.0001  

SELECT *
FROM (`media`)
WHERE `media`.`media_id` =  '915' 
0.0004  

SELECT *
FROM (`mime_types`)
WHERE `mime_types`.`extension` =  'jpg' 
0.0001  

SELECT *
FROM (`media_metadata`)
WHERE `media_id` =  '915' 
0.0002  

SELECT SQL_CALC_FOUND_ROWS media_idposition
FROM 
(`media`)
WHERE `foreign_key_table` =  'products'
AND `foreign_key_column` =  'prod_id'
AND `foreign_key_value` =  '1991'
AND `kind` =  'gallery_image'
ORDER BY IF(position 010) AS, `position
0.0003  

SELECT *
FROM (`products`)
WHERE `avail_idIN ('A''B''C''H') 
AND `
parent_id` =  '1991'
AND `type_id` =  'V'
ORDER BY IF(position 010) AS, `position`, `title
0.0004  

SELECT `c`.`format_id`, `c`.`price`, `c`.`sale_price`
FROM (`productsAS c)
WHERE `c`.`prod_id` =  '1992'
LIMIT 1 
0.0003  

SELECT SQL_CALC_FOUND_ROWS media_idposition
FROM 
(`media`)
WHERE `foreign_key_table` =  'products'
AND `foreign_key_column` =  'prod_id'
AND `foreign_key_value` =  '1992'
AND `kind` =  'thumbnail'
ORDER BY IF(position 010) AS, `position
0.0002  

SELECT `product_categories__products`.`cat_id`
FROM (`product_categories__products`)
JOIN `product_categoriesON `product_categories__products`.`cat_id` = `product_categories`.`cat_id`
WHERE `product_categories__products`.`prod_id` =  '1991'
AND `product_categories`.`parent_id` =  1
AND `product_categories__products`.`cat_idNOT IN (1261)  
0.0004  

SELECT `cat_idAS id, `parent_idAS parent, `status_id`, `name`, `description`, `url_friendly`, `page_title`, `meta_keywords`, `meta_description`, `position`, `updated_at`
FROM (`product_categories`)
WHERE `cat_id` != 1
ORDER BY 
`parent_id`, IF(position 010) AS, `position`, `name
0.0003  

SELECT *
FROM (`product_categories`)
WHERE `status_id` =  'A'
AND `parent_id` =  1
AND `cat_idNOT IN (1261) 
ORDER BY `name
0.0002  

SELECT *
FROM (`site_settings`)
WHERE `option_key` =  'announcement' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)