"Reason to visit" or "Reason for visit" ?
Which one is correct grammatically?
I think the difference is that we use "to" when "visit" is a verb:
and "for" when "visit" is a noun:
Of course, when "visit" is a noun, you will need to add an article before it (Get ready for the visit), a determiner (I am not ready for that visit) or a possessive pronoun like in the example.
If you want to use it without a modifier, then you can do as J.R suggested and turn it into a gerund.
Interestingly enough, I would use to with visit, but for when using visiting:
The phrase to visit acts as an infinitive, but we use for when switching to the gerund form:
Either of those sounds fine to me (and I'm lucky to have such good neighbors).
This isn't something unique to the word visit; many other verbs work the same way when paired with reason:
"Reason for visit" is not quite grammatically correct. Consider these phrases:
Note that there is a difference in meaning between reason to visit and reason for visiting. The former can apply only to a visit that has not yet taken place. Therefore, in the examples above, the receptionist or the questionnaire could not ask "What is your reason to visit the doctor today?" since you are already there.