ABSTRACT Analysing the Galactic plane CO survey with the Nobeyama 45-m telescope, we compared the spectral column density (SCD) of $N_{\rm H_2}$ calculated for the 12CO (J = 1–0) line using the current conversion factor $X_{\rm ^{12}CO}$ to that for the 13CO (J = 1–0) line under the LTE (local thermal equilibrium) assumption in the M16 and W43 regions. Here, SCD is defined by $\mathrm{d}N_{\rm H_2}/\mathrm{d}v$ with $N_{\rm H_2}$ and v being the column density and radial velocity, respectively. It is found that the $X_{\rm ^{12}CO}$ method significantly underestimates the H2 density in a cloud or region, where SCD exceeds a critical value (∼3 × 1021 [H2 cm−2 (km s−1)−1]), but overestimates in lower SCD regions. We point out that the actual CO-to-H2 conversion factor varies with the H2 column density or with the CO line intensity: it increases in the inner and opaque parts of molecular clouds, whereas it decreases in the low-density envelopes. However, in so far as the current $X_{^{12}{\rm CO}}$ is used combined with the integrated 12CO intensity averaged over an entire cloud, it yields a consistent value with that calculated using the 13CO intensity by LTE. Based on the analysis, we propose a new CO-to-H2 conversion relation, $N_{\rm H_2}^* = \int X^*_{\rm CO} (T_{\rm B}) T_{\rm B}\ \mathrm{d}v$, where $X^*_{\rm CO} (T_{\rm B})=(T_{\rm B}/T_{\rm B}^*)^\beta X_{\rm ^{12}CO}$ is the modified spectral conversion factor as a function of the brightness temperature, TB, of the 12CO (J = 1–0) line, and β ∼ 1–2 and $T_{\rm B}^*=12\!-\!16$ K are empirical constants obtained by fitting to the observed data. The formula corrects for the over/underestimation of the column density at low/high CO line intensities, and is applicable to molecular clouds with TB ≥ 1 K (12CO (J = 1–0) line rms noise in the data) from envelope to cores at sub-parsec scales (spatial resolution).