The man was surfing with a friend, also in his early 20s, when they were caught in a rip, Search and Rescue incident co-ordinator John Gilbert said.
One of the surfers made it back to shore and alerted emergency services as the other took refuge at nearby Bird Island, he said.
‘‘There is quite a strong rip out there today, as there always is out there.''
The rescued man had minor cuts and abrasions and had swallowed some water, Mr Gilbert said.
He was taken to Dunedin Hospital for a check-up.
Two rescue boats from the St Kilda Surf Live Saving Club attended the scene.
Both men were from Dunedin.