'Work hard at it' or 'work hard for it'. Which is grammatically correct?

I am pretty sure work hard for it is correct in this situation. 'it' is referring to success. 'work hard at it' would be used if 'it' referred to something that you can do and since you can not do success that doesn't really work. 'work hard for it' would be used if 'it' referred to an potential outcome or goal of your work. Success can definitely be an outcome of working hard so that is the wording I would go with.


work hard at it implies simply putting a lot of effort into a job.

work hard for it implies applying great effort in the pursuit of a goal.