Present perfect talks about a time period that starts in the past and continues into the present. In the following sentence, however, the time frame doesn't continue into the present, the moment of speaking. Why can the present perfect work?

Every day, by the time we get home from school, mom has prepared the dinner.

  • No, it does not necessarily "continue" in the present at all. It is merely about something that occurred at an undefined past time. Otherwise, one would use the simple past. This thing about not knowing exactly when in the past is the most important characteristic of the PP.
    – Lambie
    Mar 13, 2022 at 15:23
  • Sorry, but I do think it is something that is happening in the present and not at an unspecified time in the past. It is a daily routine, happening currently. When we get home from school, dinner is ready.
    – anouk
    Mar 13, 2022 at 18:22
  • The rule about "the moment of speaking" is a sort of simplification, it will not apply to entire complex sentences, if you try to apply it part by part. But, here "every day" tells you that the time frame is ongoing.
    – BadZen
    Jul 25, 2023 at 3:27

1 Answer 1


The sentence you’re referencing here would be better rewritten as:

Every day, mom prepares dinner by the time we get home from school.

Your current sentence is rather ambiguous in timeframe. It works, but isn’t ideal. And to answer your question more directly, the timeframe actually does continue into the present, the moment of speaking. You are saying that mom regularly prepares dinner by a certain time, an action that is continuing to the present. That is what the “every day” indicates: that this action is ongoing.

“By the time” merely indicates a more specific setting for the action in question. For example, in this sentence:

Every summer, when we go to my grandparent’s house, we swim in the lake.

Here, “when we go” would serve a similar purpose to “by the time.”

Finally, “has prepared” serves to further specify the details of the action. It tells you exactly what the action is. You could have said, “mom starts preparing dinner” and that would have been fine; it would mean that the action here is “starting dinner.” So here, “has prepared” doesn’t indicate that mom finished cooking and is no longer cooking in the present. It only indicates that, on a regular/continuing basis, mom finishes cooking by a specific time.

  • Thank you very much. But your sentence "Every day, mom prepares dinner by the time we get home from school" is ambiguous to me. Does it mean mom starts to prepare dinner or finishes doing it?
    – Stephen
    Feb 2, 2022 at 3:11
  • 1
    It means she finishes it! “By the time” is a phrase that usually indicates the completion of one thing at or before a certain point in time. Feb 2, 2022 at 4:16
  • 2
    Annabeth, I don't agree that your version is better. The original says that, when the children get home they find their dinner already cooked. I agree with Stephen that yours is ambiguous. Mom prepares dinner ready for the time when the children will arrive home. Feb 2, 2022 at 9:07
  • Kate, I do see the ambiguity, but I would also argue that “prepares dinner ready” is not a phrase I have ever seen used before. That might also be attributed to regional differences. Perhaps the best alternative would be “Every day, mom has dinner ready by the time we get from school.” Feb 2, 2022 at 23:24
  • The specific action is not ongoing. We just don't know when in the past it occurs. I see no reason to rewrite this. I agree with Kate.
    – Lambie
    Mar 13, 2022 at 15:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .