Granite (and I assume marble, although I don't have any so you should google it), you do NOT want to use vinegar or anything acidic or citrus.
Alcohol is key on natural stone.
1/4 cup rubbing alcohol + 3 drops dish soap + essential/fragrance oil (if you want it) + fill up rest of 16 - 24 oz container with water. It does a great job on granite. I found this online after buying some commercial cleaner and realizing it smelled faintly of alcohol.
I was using regular all-purpose spray on the granite before, and this does a much, much better job. I generally like to minimize products but this alcohol solution is worth it.