A West Australian man has been caught after he returned to buy cigarettes at a store he allegedly held up a few weeks earlier, police in the state's South West say.

Detectives said the 22-year-old man asked for cigarettes and a lighter before pulling out a kitchen knife at a small grocery store in Bunbury in August.

Police said he then took the items and left the store without causing any injuries to the female shopkeeper.

The man might have gotten away with it, until he returned to the store on Monday to buy cigarettes from the very shopkeeper he had allegedly held up weeks earlier.

The shopkeeper recognised him and later called police to inform them the man had come back to the store without incident.

Detectives were pleased to receive yet another phone call on Tuesday that the man had returned once more for cigarettes and was still in the store.

Police raced straight there and arrested him.

The East Bunbury man has been charged with armed robbery and will face court next month.