My bike is a 1984 Ninja 900.
It starts fine at temps. below 30 with a strong, well maintained battery.
I engage the choke 100%, hit the starter button and within 3-5 seconds of cranking over typically fires up. I do NOT touch the throttle as this interfears with the choke plungers doing their job.
If your battery is weak, or your plugs are old and weak, or you high tension wires are getting old then these will factor in with a harder starting procedure in colder weather.
If you apply throttle inputs during cranking then you will have a harder time getting the bike started.
If you still have issues getting the bike to start after trying for a bit, pull the lugs and examine them. If they are wet then you may have a weak spark condition or a weak battery. Just because the battery cranks the bike over does not mean it has enough juice to "light" the engine.
How long to keep the choke on for? The least amount of time possible is best. Cooler weather starts have me start the bike with 100% choke, and then I tap it back a bit for the idle to settle down to about 1500rpms on mine. I then put my jacket on, helmet and gloves and get on the bike. I tap the choke almost off and work the throttle a bit to get us moving a bit. Once I'm 100 yards down the road the choke is off. This process keeps the bike using the choke for about 1 minute at most.