That’s a tough question. You will be able to find sprint length recommendations ranging from 1 week to 2 months. The ideal length depends on:
Overall Length of the Release: Short projects benefit from short iterations.
Amount of Uncertainty: The more uncertainty of any type there is, the shorter the iterations should be.
How Long Priorities Can Remain Unchanged: Once a development team commits to completing a specific set of features in an iteration, it’s important that they not be redirected from that goal, so people outside the team shouldn’t change the team’s priorities during an iteration.
The Overhead of Iterating: Costs are associated with each iteration.
How Soon a Feeling of Urgency Is Established: The intensity level varies quite dramatically on a twelve-month, non-iterative, waterfall-process project.
As explained by Mike Cohn in his post “Selecting The Right Iteration Length For Your Software Development Process“.