Report on model-based optimal Design of Experiments, illustrated with a case study on cinnamaldehyde hydrogenation implemented in Python. After some background on optimal experimental designs for parameter estimation and model discrimination, the case study is explained together with the required input. The architecture of the Python code and the implemenation of the case study is explained, followed by the experimental design and the model discrimination. The results are shown and extensively discussed. The Python codes together with explanation of how to install and run the codes is supplied in a zip-archive: Smart DoE and Model Discrimination – Case study – Python code.zip.