The best secret out there is the NCL credit card by Bank of America. For 60,000 points, the equivalent of $600, you can upgrade from inside to balcony (for 2 people). You can also earn points with their Premium Rewards Card and transfer them to the NCL card to redeem. This is the only way we cruise with NCL now.