We constrain cosmological models where the primordial perturbations have both an adiabatic and a (possibly correlated) cold dark matter (CDM) or baryon isocurvature component. We use both a phenomenological approach, where the power spectra of primordial perturbations are parametrized with amplitudes and spectral indices, and a slow-roll two-field inflation approach where slow-roll parameters are used as primary parameters determining the spectral indices and the tensor-to-scalar ratio. In the phenomenological case, with cosmic microwave background (CMB) data, the upper limit to the CDM isocurvature fraction α is 6.4% at k = 0.002 Mpc −1 and 15.4% at k = 0.01 Mpc −1 . At smaller scales (larger k) larger isocurvature fractions are allowed, and therefore large values of the isocurvature spectral index, niso ≈ 2, are formally favored. The median 95% range for the non-adiabatic contribution to the CMB temperature variance is −0.030 < αT < 0.049. Including the supernova (or large-scale structure, LSS) data, these limits become: α < 7.0%, 13.7%, and −0.048 < αT < 0.042 (or α < 10.2%, 16.0%, and −0.071 < αT < 0.024). The CMB constraint on the tensor-to-scalar ratio, r 0.26 at k = 0.01 Mpc −1 , is not affected by the nonadiabatic modes. In the slow-roll two-field inflation approach, the spectral indices are constrained close to 1. This leads to tighter limits on the isocurvature fraction, with the CMB data α < 2.6% at k = 0.01 Mpc −1 , but since the non-adiabatic contribution to the CMB temperature variance comes mostly from larger scales its median 95% range is not much affected, −0.058 < αT < 0.045. Including supernova (or LSS) data, these limits become: α < 3.2% and −0.056 < αT < 0.030 (or α < 3.4% and −0.063 < αT < −0.008). When all spectral indices are close to each other the isocurvature fraction is somewhat degenerate with the tensor-to-scalar ratio. In addition to the generally correlated models, we study also special cases where the adiabatic and isocurvature modes are uncorrelated or fully (anti)correlated. We calculate Bayesian evidences (model probabilities) in 21 different cases for our nonadiabatic models and for the corresponding adiabatic models, and find that in all cases the current data support the pure adiabatic model. 98.80.Cq, 98.70.Vc