On embarkation day all the cruise lines sell lanyards in various places and in at least one onboard store after that. If you want a lanyard branded to Royal Caribbean, Carnival, MSC, or any other cruise line, you can get one, but you will generally pay $15 to $20 each and may not have a lot of choices.