Question: who plays granny in once upon a time
Answer: Beverley Elliott ( born 31 December ) is a Canadian actress and singer - songwriter .