You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm experiencing severe performance issues with Shopify FlashList when rendering larger datasets. When the number of items is kept at 8 or fewer, the UI remains smooth and stable, maintaining around 60 FPS. However, once the list reaches about 30 items, the FPS drops drastically — sometimes as low as 2 to 10 on low-end devices. By FPS drops, I mean the scrolling becomes noticeably laggy or janky, resulting in a poor UI/UX.
While I’ve done my best to optimize the component structure — including testing with a static feed — the issue still persists. I also tried slicing the data down to reduce what’s rendered, and indeed, performance improves with fewer items. But writing logic to manually slice the data and then re-load the sliced-off items during upward scrolling would be a real pain and introduce unnecessary complexity.
I initially assumed FlashList only processes logic for the items visible on the screen and not the entire dataset. If that assumption is correct, I would expect it to handle even 1,000 items efficiently. But perhaps I’m misunderstanding how it actually works.
Any guidance on how to properly optimize FlashList for larger datasets, or updates to improve its performance handling, would be greatly appreciated.
below is how one of my item looks like
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I'm experiencing severe performance issues with Shopify FlashList when rendering larger datasets. When the number of items is kept at 8 or fewer, the UI remains smooth and stable, maintaining around 60 FPS. However, once the list reaches about 30 items, the FPS drops drastically — sometimes as low as 2 to 10 on low-end devices. By FPS drops, I mean the scrolling becomes noticeably laggy or janky, resulting in a poor UI/UX.
While I’ve done my best to optimize the component structure — including testing with a static feed — the issue still persists. I also tried slicing the data down to reduce what’s rendered, and indeed, performance improves with fewer items. But writing logic to manually slice the data and then re-load the sliced-off items during upward scrolling would be a real pain and introduce unnecessary complexity.
I initially assumed FlashList only processes logic for the items visible on the screen and not the entire dataset. If that assumption is correct, I would expect it to handle even 1,000 items efficiently. But perhaps I’m misunderstanding how it actually works.
Any guidance on how to properly optimize FlashList for larger datasets, or updates to improve its performance handling, would be greatly appreciated.

below is how one of my item looks like
Beta Was this translation helpful? Give feedback.
All reactions