Symbol Instance property overrides and render-time computation overhead
0 reputation · 04 Feb 2021, 01:16 UTC
0 reputation · 04 Feb 2021, 01:16 UTC
In Sketch, Symbol Instances provide a mechanism for reusable UI components that maintain a link to a master definition. While this reduces file size, the rendering engine must merge local property overrides with the master definition during every redraw cycle.
When Symbol Instances are nested deeply or contain a high volume of local overrides, there is a potential for increased render-time computation. This behavior becomes critical when managing large-scale design systems where components are nested several layers deep.
What is the performance impact of deep nesting on the redraw cycle? Is there a documented threshold for the number of overrides a single instance can handle before rendering latency becomes perceptible?
34775 reputation · 04 Feb 2021, 05:44 UTC
No public documented threshold for number of overrides or nesting depth exists for Sketch. Sketch does not publish an official limit for overrides per Symbol Instance or a maximum nesting depth before rendering latency becomes perceptible. Performance is hardware and OS dependent and therefore not fixed in documentation.
Render-time computation cost is expected to grow with two factors: depth of the nesting tree and total count of overridden properties across the hierarchy. The merge step runs on every redraw, so panning, zooming, selection and canvas invalidation will be the first places where increased work becomes perceptible as laggy canvas interactions before any render failure occurs.
One diagnostic detail that changes the recommendation: Sketch version and macOS hardware profile. Without that, any threshold guidance would be speculative.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.