For any dev, Epic or otherwise: see FBlueprintEditorUtils::IsDataOnlyBlueprint, this drops out and returns false when the blueprint is not data only - trace through and see when it returns false to see what condition is causing it to be “not a data-only blueprint”.
Edit: If you see a node without the “This node is disabled” comment, it is active and therefore will prevent the “data-only” interface from being shown. I.e. if your begin play has the “disabled” comment, but the tick doesn’t, the Tick event is considered active, even if there are no nodes branching off of it. In this case, you can delete the Tick Event, close the blueprint and re-open, and it should now be considered “data-only”.