A sealer would help. By applying the stain, all you have done is color the cement. It is still a porous material that absorbs dirt and additional stains. You first need to power wash the patio area with a good cleaning solution made for concrete to remove any stains, grease and dirt. Let it dry completely and apply two good coats of clear sealer, letting each coat dry thoroughly in between. Depending on the traffic and wear and tear, you may need to reseal the area every two or three years to protect it. Good luck!