Princess website contains the following information:
New York City
Princess offers transfers from New York's John F. Kennedy and LaGuardia airports and New Jersey's Newark airport.
Embarking Passengers For voyages that depart from New York City, the latest flight arrivals are as follows:
LaGuardia: 3 hours prior to ship's departure for domestic flights
John F. Kennedy: 4 hours prior to ship's departure for domestic flights
Newark: 4 hours prior to ship's departure for domestic flights
Disembarking Passengers For voyages arriving in New York City, the earliest flight departures are as follows:
LaGuardia: 6 hours after ship's arrival for domestic flights
John F. Kennedy: 7 hours after ship's arrival for domestic flights
Newark: 7 hours after ship's arrival for domestic flights
Also, be advised that if there are two (or more) of you, a taxi from LGA to the cruise terminal will cost about the same as the Princess Transfer, and you can go on your own time without waiting around for others. Uber and Lyft are probably similar, but NYC is the one place where I much prefer Yellow Cab taxis over the private rides. The cabbies know the best routes and which streets to avoid far better than the private ride drivers who tend to follow Google Maps religiously, and that often gets them routed onto a cross street that is pinched down to a single lane. Can be frustrating.