No, it is a contract. There are prices on the menu, and you are agreeing to that price when you ask for the item. Not all contracts need to be signed, but they have to be somehow agreed to.
Every website you visit has TOS. Facebook in particular has extremely clear TOS, written in plain English, that everyone consents to. In Europe, most websites explicitly ask for consent now. Doesn't seem very different to me.
And all of those sites track you before you've even had a chance to see their terms.
Facebook infamously tracked people who'd never had Facebook accounts (and therefore had never agreed to Facebook's ToS), and now claims not to, but who knows?
They can take my use of ad and script blocking as implicit rejection of the terms of their contract, and they’re free to deny me service. If they don’t, I’m not obliged to do it for them.