Knowing the execution-time characteristics of a program is fundamental to the successful design, validation and deployment of real-time systems. This chapter deals with the problem of how to estimate, measure and analyze the execution time of embedded real-time programs. Of particular interest is the worst-case execution time (WCET). It covers the reasons for program execution time variation, including both the software and hardware complexity inherent in today's embedded systems. It gives an overview of various techniques used to derive execution time estimates. Finally we summarize a number of industrial case-studies of timing analysis, to show how timing analysis works in practice.