I used jscan before buying a Tazer. Both worked perfectly but since the Tazer stays connected now, I use it when I swap back and forth to the tires I use for towing.
I use an ECRI. You buy it once and can use it on multiple vehicles for a fee per vehicle but then it's yours forever. I went that route because we have multiple Jeeps.
I second the ECRI. You can use the GPS speedo calibration function. I have both a Tazer( wife's JL ) and an ECRI. I prefer the ECRI. I don't really need the live functions of the Tazer.
I just did mine with jscan, turns out I didn't even need the extensions everyone else talked about (I think the bypass is harder to reach if you have adaptive cruise control -which I don't) but it was the cheapest option, very easy and can be used on multiple jeeps (purchase each VIN for like $25)