Nothing in the QR standard itself expires. A QR code is a printed pattern of black and white modules that encodes a piece of text, usually a URL, and that pattern will still decode to the same text in fifty years. When people say a QR code has expired, they mean the thing it points to has stopped working. That is a hosting and account question, not a limit of the format.
The distinction matters because of how QR generators are priced. A static QR code encodes the final URL directly, so it cannot expire, but it also cannot be changed: if that page moves, the printed code is dead. A dynamic QR code encodes a short redirect owned by the generator, which is what makes it editable. It is also what makes it fragile: if the trial ends or the account lapses, the redirect stops resolving and every printed code fails at once. Trial-based generators are where the reputation for expiring QR codes comes from.
QR Cake's free plan is not a trial. You can save up to 5 dynamic QR codes for free, the redirect stays live with no end date, and scans are unlimited. The trade-off is a short QR Cake page, a brief ad with a few-second countdown, that each scan sees before your destination; any paid plan removes it, and Basic and higher plans raise the code limit. If you later cancel a paid plan, your printed codes keep redirecting to their last saved destination instead of going dark, which is the failure that makes people distrust dynamic codes for long-lived print.