We live and breath agile for our development - we're fans and hopefully you are too.
However from a project perspective this doesn't work for all clients so we adapt the approach to the customer as there is no one-size-fits-all.
Some clients internal processes are better suited to multiple steps of waterfalls and we support that fully by providing a design-led first phase, leading to development (usually managed in agile sprints internally), and testing cycles.
In short - your project your way!
Our agile sprints are typically 2 weeks in length. We find that's the best mix between efficiency and turnaround for clients; our developers get time to work through their workload properly and clients wait a maximum of 2 weeks to see the outcome.