Hi everyone,
We are currently analyzing the performance of record views in our application to understand what contributes to the overall record view load time beyond the interface itself.
During our analysis, we observed that the interfaces configured for the record views perform well when tested independently (around 2 second). However, when the same interfaces are rendered as record views in a site, the overall load time increases significantly (around 4 seconds), with an additional 2–3 seconds spent during record view loading.
This isn't isolated to a single record view—we're seeing the same pattern across multiple record views. We also notice that the additional delay is more pronounced in Production and higher environments than in DEV, which makes us wonder whether larger data volumes or other environment-specific factors could be contributing. Fun fact is DEV has more data volume than PROD. So its weird. Maybe its Infra issue?
We're trying to understand what additional processing Appian performs when rendering a record view. Do queries within the interface undergo any additional evaluation in the context of a record view, or is the extra time typically due to record context initialization, security evaluation, related records, or other record-level processing? Also we observed the behaviour is random sometimes.
One specific question we have is about interface design. Some of our record view interfaces are quite large, with many components and visibility conditions. Could the size and complexity of the interface itself contribute to the additional record view load time? Is it generally recommended to keep record view interfaces small and focused, or is it perfectly fine to use larger, condition-heavy interfaces as record views?Can you suggest better design approach if this is more like a design issue?
Has anyone observed similar behavior or can suggest what areas we should investigate to identify the source of this additional time?Tagging you for your expertise Stefan Helzle Mike Schmitt !!!Any insights would be greatly appreciated. Thanks in advance!!
Discussion posts and replies are publicly visible
AFAIK, rv!record eagerly returns the record plus up to 250 related rows per one-to-many relationship before the interface renders, regardless of showWhen. That is your 2,375 ms. Switch to rv!identifier + a!queryRecordByIdentifier() with only the fields you display. Cost scales with that record's child row count, not table size, which is why DEV looks fine despite more data. Also set record actions to MENU style so security is only evaluated on click, and move related-record grids to separate view tabs so they load on demand.https://docs.appian.com/suite/help/26.6/reference-records.html