**Jacob Bartlett** @jacobtechtavern [2026-04-24](https://x.com/jacobtechtavern/status/2047677799624839181)If you want your scrolling feed in SwiftUI to be sh\*t, use a VStack 💀I thought it'd be fun to scientifically verify what happened when VStack tried to render 1,000 items in a ScrollView. It immediately froze on load. VStacks render the entire view hierarchy eagerly when they appear: all 1,000 cells laid out simultaneously.Touching the screen did nothing. All interaction was blocked.Once it had finished loading, I could now interact with the scroll view, but experienced frame drops Look at the VSync Instruments trace - while some frames rendered in the expected 16.67ms (60fps), many took far longer, which manifested as many dropped frames per second.Eagerly loading 1,000 views all at once also created a massive memory spike accompanying the hang, which never went away since the views were all held in memory.Read the 120FPS challenge here 🚀 https://blog.jacobstechtavern.com/p/swiftui-scroll-performance-the-120fps…


**Shannon Potter** @cifilter [2026-04-24](https://x.com/cifilter/status/2047721802151928153)I mean I should hope nobody would be stupid enough to use a plain VStack for massive lists haha
**Jacob Bartlett** @jacobtechtavern [2026-04-24](https://x.com/jacobtechtavern/status/2047723929146433881)Hopefully not, but I've made the mistake before where I'll put a VStack for a medium-sized, non-infinite but slightly too big list and took too long to notice the stutter that every single user was experiencing on load!
**Ulaş Difficile** @ulasdifficile [2026-04-24](https://x.com/ulasdifficile/status/2047791901516919072)VStack is not designed for this. I don’t get the point here. You should use LazyVStack.
**Carlos Valentin** @CarlosBBuild [2026-04-24](https://x.com/CarlosBBuild/status/2047762858063376839)LazyVStack is the move here
**Shannon Potter** @cifilter [2026-04-24](https://x.com/cifilter/status/2047721802151928153)I mean I should hope nobody would be stupid enough to use a plain VStack for massive lists haha
**Jacob Bartlett** @jacobtechtavern [2026-04-24](https://x.com/jacobtechtavern/status/2047723929146433881)Hopefully not, but I've made the mistake before where I'll put a VStack for a medium-sized, non-infinite but slightly too big list and took too long to notice the stutter that every single user was experiencing on load!
**Ulaş Difficile** @ulasdifficile [2026-04-24](https://x.com/ulasdifficile/status/2047791901516919072)VStack is not designed for this. I don’t get the point here. You should use LazyVStack.
**Carlos Valentin** @CarlosBBuild [2026-04-24](https://x.com/CarlosBBuild/status/2047762858063376839)LazyVStack is the move here