PurposeThis paper aims to develop a bi-objective mixed integer non-linear programing model to optimize the supply chain networks consisting of raw material providers, final product manufacturers and distribution centers. Raw material substitution caused by varying raw material supply amounts, prices and carbon emissions and final product substitution due to different product prices and carbon emissions are considered.Design/methodology/approachThe proposed model aims to achieve total profit maximization and total carbon emission minimization. The objective function of carbon emissions is converted into a maximization problem by changing minimum to maximum. The composite objective function is the weighted sum of the bias value of each objective function. The model is then solved using software Lingo12.FindingsNumerical analysis results show that an increase in the number of alternate raw materials for original raw material helps improve supply chain network performance, and variation in that number causes detectable but not significant changes in downstream final product substitution results.Originality/valueThe major differences between this work and existing research are as follows: first, although previous research considered carbon emissions in supply chain network optimization, it has not considered the substitution effects of products or raw materials. This paper considers the substitution of both raw material and productions. Second, the item substitution considered by previous research is derived from inventory shortage or price difference of original items. However, the substitution considered in the present paper is a response to differences in purchase price, production cost and carbon emissions for items.