The German Federal Court of Finance (BFH) decided in its decision of 20.08.1997 (BStBl. II S. 667) that employers and employees can replace cash wages with a non-cash benefit by mutual agreement without further ado.

The legal basis for the meal subsidies by means of Circula is R 8.1 Abs. 7 Nr. 4 LStR.

Accordingly, meal allowances of working days currently (2021) up to 6.57 € per day with the official non-cash remuneration value of currently 3.47€ being taxable as a lump sum. This results in a division of the meal subsidy into a tax-free and a taxable part:

Food allowances that do not exceed the limit (of 3.47€) can be valued as a meal taken by the respective employee at the official non-cash benefit value and taxed at a flat rate of 25%. In the case of lump-sum taxation, the non-cash benefit is exempt from social security contributions under § 1 (1) SvEV. The amount exceeding this of (maximum) EUR 3.10 represents a tax-free subsidy from the employer. Additional payments made by the employee for the meal are to be credited against the lump-sum taxable value of the non-cash benefit.

Since 2016, in addition to physical meal vouchers, digital meal subsidies are also possible (BStBl 2016 I S. 238).

How the calculation works:

The maximum benefit per day is 6.57€ (2021) and is split into two parts. A base of 3.47€, which represents the “non-cash benefit value” of lunch meals and is by default subject to tax, with a fixed tax rate of 25%. Additionally, the employer may provide up to 3.10€ tax-free on top of it)

  • If the employee submits less than the maximum (6.57€), the tax-free amount gets reduced by the amount of the difference. If the user submits less than 3.47€ in a day, the non-cash benefit value of 3.47€ is still taxable.

  • If the employee pays more than 6.57€ for his lunch, the amount subject to tax (fixed tax rate) gets reduced by the amount of the difference. (A receipt of 10.04€ or higher will result in a tax-free reimbursement of 6.57€)

Do you still have questions?

💬 Chat Support
📞+49 30 588 491 01

Did this answer your question?