A method is presented for the estimation of age errors for U–Pb zircon data based on Bayesian confidence intervals. The optimum regression problem is first solved using the formalism of maximum probability. The correlation between errors is removed by applying a separate rotation and translation operator for each point. A probability density function is then defined in terms of two straight-line parameters, slope and y intercept, and the optimum line is found by maximizing this function. The intercept parameter is then transformed into an age t, determined by the upper concordia intercept of the given line, and the function is redefined in terms of the slope and t. By integrating this function over the slope parameter, a function of probability versus t is obtained. The age errors then have a natural expression in terms of the width of this function. The results are compared with an approximative method based on confidence-interval theory. A model is then presented to estimate ages and errors for U–Pb data that do not fit a line within error. The error ellipses of the data points are expanded by an amount proportional to discordance until a good fit is obtained. A Student's t factor is applied only to the residuals in the resulting age errors.