NinjaTrader: “Real-time market data required to trade”

You go to place an order and NinjaTrader refuses, saying real-time market data is required to trade.
This is not NinjaTrader judging your prices. The broker receives the order and rejects it because of the market data entitlements on your account, so the question is what your account is missing.
Check billing first
On prop firm accounts the cause we see most is market data agreements that were never signed in the firm’s or broker’s portal; the connection looks healthy and every order on it is rejected. A lapsed data subscription produces the same message.
Open your Account Dashboard, then Settings, then Plans, and confirm the subscription is active and paid. Then restart NinjaTrader. The platform does not always pick up a reinstated subscription without one.
Then check the exchange
If billing is current, the instrument is probably outside the package you pay for. Subscriptions are per exchange, so a trader with a CME package who moves to an ICE contract will hit this on the first order despite everything being paid and connected.
The Log tab in the Control Center will name the instrument if it is being served delayed.
Then check the contract
An expired contract month cannot receive real-time data. If the chart has been open across a quarterly roll, it is now pointing at something that no longer trades. Roll to the current month.
If everything above is correct
At that point the likely explanation is that data is not actually arriving, whatever the connection status claims. A connection can report itself healthy with a dead feed behind it, which produces this error at the moment you try to trade rather than at the moment the feed died. Connected but no data covers how to confirm that quickly.
Common questions
I trade a Tradovate prop account. Where are the agreements? Sign in once at trader.tradovate.com with the credentials your firm issued and complete the market data agreements there, then restart NinjaTrader.
Is this the same as “Instruments not subscribed for real-time data”? They are related. That warning appears when charts are on delayed data; this error appears when you try to trade one of them. See “Instruments not subscribed for real-time data have been detected”.