Obviously, popcorn is dirt-cheap. Probably just as cheap, if not cheaper, than the free ice cream at Eye Scream.
I have always just assumed that the popcorn wasn't free because if it were, people would be grabbing tons of it, spilling it all over the ship, and constantly making a huge mess. By charging for it, DCL is limiting how much makes it into the hands of guests to make said mess.
But that has just been my assumption. I figured there might be people here who know if that is accurate, or if there another overriding reason the popcorn isn't free. Am I on-point with my guess?