Usually that's a sign of low compression, but if it checks out good and it's not something simple like the heat sensor then its gonna be electrical related. You'll have to ohm the stator, then ohm the primary and secondary side of the ignition coil. If those two check out then I'd point fingers...