It turns out there is actually an answer to this question, and it’s “15 minutes”. Here is my evidence:

I looked at 6448 homework assignments that had been completed on Yacapaca, and graphed the time set by the teacher against the time actually spent by the student. The results are above.

- X-axis: time set, in seconds. 15 minutes is 900 seconds.
- Y-axis: time actually spent, in seconds.
- Green line: best-fit curve.

Note the inflection point in the curve around 900s. Up to that point, the longer you set, the longer the average student will work for. After that, it doesn’t seem to make much difference what you say; they are not going to work past that point.

The analysis does have limitations. In particular, statisticians will have noticed the R-squared value of 0.1177. A perfect fit of the curve to the data would have an R-sq of 1.0, so 0.11 indicates that real-life students scatter a long way either side of the average. Whether your students are in the top half or the bottom half of this graph, you know better than I.

The takeaway from this is that whatever the school’s policy on homework, you have no choice other than to respect your students’ attention spans. And that probably means limiting homeworks to 15 minutes.

If you assign Yacapaca homeworks, you can monitor individual students’ times from Assignments->Results->Activity Log.