You did not mention model. Year means nothing. Is it a TLDI? Could be a bad switch, a bad solenoid, bad starter, poor wiring, or a bad connection. You need to diagnose exactly what happens when it does not work. Is there an audible "click"? Do any indicator lights come on? Have you checked and cleaned all connections from the battery to the starter (and especially grounds)? If so, then when it fails, you can use a good analog voltmeter to see whether you have trigger voltage to the solenoid. If no, problem is in the switch and associated wiring. If yes, problem is in the high-current side -- either the solenoid, starter, or connections and cables.