Nel 2020 il trasporto ferroviario ha generato costi totali pari a 12,0 miliardi di franchi (2010: 9,8 mia. fr.), 9,9 dei quali per il trasporto di persone e 2,1 per il trasporto di merci.
Oltre agli utenti, anche gli enti pubblici hanno rivestito un ruolo importante nel finanziamento del trasporto ferroviario: nel 2020 la Confederazione, i Cantoni e i Comuni hanno destinato a questo comparto circa 5,6 miliardi di franchi, ovvero il 46% dei costi totali. Questi fondi sono serviti in particolare a finanziare progetti infrastrutturali o a sovvenzionare determinate prestazioni delle imprese di trasporto.