The other option would be the fuel pump, or the fuel filter. Check to see if fuel comes into the carb when you press the accelerator. After the car stops, open the carb (remove breather/filter) and press pedal. If no fuel comes thru then either fuel pump is not pumping fuel or the the filter is not letting the fuel come thru.
By the way, if it cranks - it is not the battery. But having to crank so much will drain the battery.
Good Luck.What could be wrong with my car and how to fix? car cranks but will not start.?it could be a lot of things, like the fuel pump/filter, crankshaft sensor, no spark. my suggestion is take it to a mazda dealer. they probably have seen this problem before. as a side note completely ignore the guy that said to check your carburetor he doesn't know what he is talking about, the last car that was produced with a carb was back in 95 or 96. your car does not have a carb.What could be wrong with my car and how to fix? car cranks but will not start.?If your check engine light has not come on then it is most likely a fuel problem. Because it is ten years old (about the age for a fuel pump problem), it is very likely where the problem is at. One nice thing about Miata's is that they were designed for easy service, and the fuel pump is easy to do.
So here is what I would suggest:
Go to a parts store, buy a fuel pump (with sock, slang for the in-tank filter), get a repair manual, OBD II reader, a set of sockets, pliers, and a fuel filter. Go home, replace the fuel filter, fuel pump and read out the error codes if there are any.
All of this will more then likely cost less the the labor charge that you will get for diagnostics at the Mazda dealer and help you to be prepared the next time something goes wrong.