Zaobserwowano, że zjada nasiona przynajmniej 152 gatunków roślin, a wiosną również pąki drzew. W atlasach i przewodnikach szczygły przedstawia się najczęściej na oście lub łopianie, ponieważ ich ulubionym i podstawowym pokarmem są ich dojrzałe nasiona. Sama nazwa łacińska wywodzi się od carduus, co oznacza oset. Żywią się jednak również drobnonasiennymi chwastami takimi jak u mniszków i cykorii.

Przeważnie je prosto z rośliny. Zawisa przy tym na niej w akrobatycznych pozach. Ciekawym aspektem jest specjalizacja pokarmowa u obu płci. Samiec ma trochę dłuższy dziób i dlatego wybiera nasiona, które położone są głębiej w koszyczkach ostu. Natomiast samica zadowala się zwykle nasionami rosnącymi na jego powierzchni. Dzięki temu partnerzy, ale i osobniki różnych płci nie będące związane ze sobą, nie konkurują wzajemnie o pokarm. Od jesieni i zimą szczygły można zobaczyć w trakcie koczowania na ugorach, odłogach, terenach przeznaczonych pod zabudowę, na obszarach porośniętych roślinnością ruderalną lub na niezaoranych polach (zwłaszcza pojawiają się tam, gdzie rośnie oset i łopian). Pokarmu poszukują wtedy skupione w stadach z innymi ziarnojadami.