Learn English – “Did you do it?” vs “Have you done it?”

present-perfectsimple-past

If someone did something that made me mad, which is correct to say:

  • Did you do it?
  • have you done it?

If not, what is the proper situation for saying Did you do it?

Best Answer

“Have you done it?” is the question to ask if you want to know:

  • whether a task is finished, or
  • whether they have experience with some task.

For example, if you want to know whether a report is done, or whether somebody has gone sky diving before, you can ask, “Have you done it?” In the first case, you could also ask, “Have you done it yet?” In the latter, “Have you done it before?”

“Did you do it?” is the question you want to ask to find out who did something. You can also use it to ask whether a task is finished, although the emphasis is different:

Did you do it?
Did you do it?