I think it depends heavily on the student, and how much practicing they do from week to week. I’ve had some students where half an hour is all they can handle, but each week they progressed appropriately and we could cover a little more material. Most have been hour lessons.

When I was in high school, I had to pay for my own lessons so I found the best teacher I could find in my town and asked him if I could take one lesson a month, since that’s all I could afford, but load the lessons with a lot of material. I had to go a month of unsupervised practicing, which was tough, but I learned a lot from that guy. He didn’t make as much money from me this way, but now that I’m teaching I definitely wouldn’t mind having a student that was up to tackling that much material in every lesson.

I think that, for recreational beginners (or moderately serious beginners), 30 full minutes is enough. I say ‘full’ because there can be 5-10 minutes of inefficiency in a lesson slot. The last session’s student leaves. The current session’s student arrives, unpacks, sets-up and tunes-up. There may be some light small-talk to get the lesson started and some paperwork. Then the student needs to pack-up and leave.

Because I’m his last student and he’s trying to avoid traffic, my current instructor can give me 40-45 minutes of time so we have 30 minutes of the actual lesson and 10-15 minutes of ‘inefficient time’.

When I took lessons several years ago, we always had hour-long (give or take) sessions. Depending on how the lessons are structured and what the student-teacher relationship is like, maybe shorter lessons would be okay. I know in my case we had somewhat freeform lessons and there was also a fair amount of socialization, so I think in just 30 minutes there wouldn’t have really been enough time to dig in to a lesson proper (but I much preferred the social interaction to a shorter lesson time).