Hello and welcome to 2CarPros.
Your description sounds like a bad battery feed, either a bad or corroded cable or a loose connection. Vibration makes it work for a while until it get's into a spot that doesn't conduct. When it doesn't start are you pop starting it or using a jump?
I would test the connections at both ends when it doesn't start. To do that you would need a multi-meter. You would be testing for voltage drop, between the battery terminal and the cable connections as well as between the battery terminals and the positive battery connection on the starter and the ground on the block.
To do the testing is fast and easy. Turn the key on. Take the voltmeter and connect one lead to the battery terminal itself, then touch the other lead to the battery connection on that terminal, on most digital meters it doesn't matter which lead you use, it will just read negative numbers if reversed. What you want to see is 0 volts or very close to it like .01, anything higher means the connection is dirty and you are losing some power there. Then go from the battery terminals to the connections at the other end of the cables. Same thing there, you want to see 0 volts for a perfect connection. Also check directly to the engine block on the negative side. So say you connect the tester between the battery positive post and the engine block. You should see battery voltage there, however that circuit may not be able to carry enough amperage to start the engine. The voltage drop testing can show you the open or corroded connection that is blocking the current flow.
For a much better description of the testing process go to good old YouTube and look at HumbleMechanic Voltage Drop Testing
Schrodingers Box Diagnosis and Understanding- Voltage Drop
https://www.2carpros.com/articles/how-to-use-a-voltmeter
Wednesday, February 20th, 2019 AT 11:39 AM