Any gotcha with Sprint 1 year 'free' unlimited service?

I don't think a Sprint-network prepaid phone is ever eligible for Sprint Postpaid. The prepaid moto E 2nd gen is not likely to become eligible for Postpaid by any method.

The factory unlocked G4 should be eligible. It's either on the wrong side of the PLBL (prepaid/wholesale)/SPCS (retail) database, or possibly SKU'd wrong.
The most likely is the Wholesale/Retail flag--
Either:
Sprint Click-It Ticket
If last used on Tello, ask them for assistance in flipping the flag correctly, as it should have been reset to retail when it was released.
If last used on Ting, ask them for assistance in flipping the flag correctly. (If last used on Ting, you might also try PMing member LiterallyUnlimited via Reddit-- I think he's still willing to assist with Ting releases that were done incorrectly.)

I'm a little less familiar with the SKU issue-- but apparently some phones are misidentified in the database as originally being Prepaid phones, when they were not. This is a stickier problem, because Sprint won't flip the wholesale/retail flag on a prepaid phone-- it's stuck on prepaid. To address this, you would have to talk to a Sprint CS agent who understands the possibility of re-SKUing a phone.

See this description of the issue from LiterallyUnlimited:
https://www.reddit.com/r/Sprint/comments/7ikah5/unlocked_galaxy_s8_bought_from_samsung_showing_in/

Dang, that sucks. I'm gonna try anyways. I'm sure that when I was following R+ Social posts more closely, I knew Sprint rules better, but now that I've been away from Social posts, I've forgotten them.

Thanks for this. I assume that the G4 can do it, at least because PEW was able to get his G5+ fixed.

Yes, there is no question that a factory unlocked Moto G4 should be eligible to be activated on Sprint Postpaid, and should be eligible to sign up (as an initial phone) on the Sprint Unlimited offer.

I seem to recall that early after release, there were some instances of one of the phones in the Moto G4 line being mis-SKU'd, and identified in the Sprint database as prepaid phones.

Since your phone has been on prepaid, the more likely cause is an improper release from the prepaid MVNO (or Sprint failing to reset the flag correctly after a proper release........) If you still have a Tello account (or other Sprint MVNO that has no-charge device swapping), you could try swapping it in to the Tello line, swapping it back out, and then retesting the ESN on the Sprint Unlimited ESN check page. (Just giving another chance for the wholesale/retail flag to be reset correctly--give it 24 hours for the database to catch up.)

I activated an unlocked G4 Play just this weekend; it too had the PLBL flag set since it had most recently been on Ting. I connected to Ting's online chat and asked for the flag to be reset, and the rep knew exactly what I wanted and fixed it in about 5 minutes.

I guess the gotcha will be trying to adapt back to living on limited data after the 1 year offer... Half way through the month and I already used 3GB (2GB of regular use plus 1GB for movie as a test)!

CS at nearby Sprint store tried to put Sprint PP Moto E 2015 on the 1-year-free-unlimited, but it wouldn't allow him to do it unless he changed it to a different plan. That merely confirms what apparently most of you already know or remember, but that I've forgotten. Busted.

20 days in and I've used 4GB already, yikes! Good thing it's unlimited.