The convention for US treasury bills is discount yield. Constant maturity series (CMS) are not actual treasury yields but a computed construct that has always a set maturity (1 year for example). Insofar, it is not too important what exact quote this is if you hold actual treasury securities, as these values will not match each other in any case. With regards to CNBC - they use Tradeweb CMS which I do not use and cannot comment on. However, I think the formulas are here (see yield section), where REGNOT stands for treasury notes / bonds and REGBILL for treasury bills. This would be on an investment basis as shown below.
I'll use some Bloomberg screenshots to show the calculation. I am not showing the CMS computation as this is rather involved but only the difference in yield computation.
- The discount basis formula (also called T- bill) method` is for example explained here. For the screenshot below:
(FV-P)/FV * (Y/D) = (100-99.804625)/100*(360/27) = 2.605 where FV = Face value, P = price, Y is days per year (360 here) and D = days left to maturity.

- The investment basis is also called bond equivalent and should be Actual/Actual EOMC Semi- Annually for treasuries. That is what Tradeweb (CNBS) uses according to the linked methodology. On BBG, Bid YTM (YLD_YTM_BID) is the so called US Treasury convention (utc) on the YAS screen above. You can switch the Simple Interest (Act/360) to 365 to see that this is the displayed US treasury convention (blue arrow). It is computed as the interest needed to get from the price to the face value: P*(1+utc*(D/Y)) = FV or solved for utc to get utc = (FV/P -1)*(Y/D).
A quick cross check on FLDS
(or also YAS) allows to test that this is indeed what is computed if you manually override the "price".

While in this example the main difference between the two methods comes from the daycount, (FV−P)/FV ≠ (FV/P -1) = (FV-P)/P
In Python, you can compute it like so:
P = 99.804625 # Price (current)
FV = 100 # Face Value
D = 27 # Days to Maturity
Y1 = 365 # year
Y2 = 360
utc = 0.02646351 # US Treasury Convention
print(f'Discount formula (T-bill method): 360 (Bid PX) = {round((FV-P)/FV*(Y2/D),8)}')
print(f'Discount formula (T-bill method): 365 = {round((FV-P)/FV*(Y1/D),8)}')
print(f'Discount formula (T-bill method): P = 99 (Bid PX) = {round((FV-99)/FV*(Y2/D),8)}')
print(f'Final Value = {round(P*(1+utc*D/Y1),4)}')
print(f'Simple interest (utc): 365 (Bid YTM)= {round((FV/P-1)*(Y1/D),8)}')
print(f'Simple interest (utc): 360 = {round((FV/P-1)*(Y2/D),8)}')
which gives the following output:
