Modern List GA makes Fluent UI the default for new Power Pages sites
The GA announcement is written by Nagesh Bhat. It describes Modern List as a refreshed way to present Dataverse data using Fluent UI components, with infinite scrolling, inline filtering, shimmer loading, low-code customization and custom JavaScript support. The change in defaults is short: any site created from now on gets Modern List when a maker adds a list. Microsoft says existing classic lists are left alone so organisations can move at their own pace. Nothing is converted automatically.
Microsoft Learn's lists overview, updated the same day, makes the same point. Modern list is the default when you add a list to a newly created site. To get the classic experience, you turn off the Modern list toggle when adding or editing the list. So classic lists are still supported for new work, but makers now have to opt in to them.
This GA ends a long preview. Modern List was already in public preview in early 2024. Microsoft MVP Aric Levin wrote about it at the time and described it as available as an out of the box control via Power Pages studio with a dedicated design section that can help customize the list and follow your own site's theming. In preview, makers turned it on per list. A December 2024 Inogic walkthrough describes a toggle labeled "Try the new and improved version of this component." GA reverses that: modern is on by default for new sites, and classic is the choice you have to make.
How Modern List differs from the classic paginated list
The biggest behavioural difference is how users move through records. Microsoft Learn says both list types support sorting. Modern lists use infinite scrolling and load more records as the user scrolls. Classic lists switch to pagination once the number of records exceeds the configured page size. That can change how a page feels to use, and it affects any user training or support scripts that tell customers to "go to page 3".
The other features first appeared during the preview. Microsoft's documentation on adding lists describes shimmer loading - Loading animation displays while data is retrieved from your data source, and inline filters that apply automatically to all columns in the list view. Styling is done in design studio. The documentation says makers can customize elements such as background and font color, add alternating row colors, and adjust margins and padding, and copy the style from one modern list to other modern lists in your site for a consistent design experience across pages. Inogic describes three styling tabs in the list design panel: Standard, Header, and Row.
For practitioners, the column filters may matter most. Reviewing the preview in 2024, developer Dominic Liu said default filters on every column were such a standard feature, yet it wasn't available in the classic List. He was also sceptical about performance: "According to Microsoft, the performance for the new Modern List is also improved, but I personally haven't noticed any significant changes yet." Microsoft's GA post makes no performance claims and gives no benchmarks. Treat speed as something to test on your own site.
Some things stay the same across both list types. A list is still built from a Dataverse table and one or more model-driven app views, and those views set the columns and structure. Microsoft Learn says modern and classic lists both support multiple views. If you specify more than one, users get a dropdown to switch between them. Filters based on the current user, the user's parent customer account and the current website also still apply to how data is scoped.
The Power Pages Client API brings custom JavaScript into Modern List
The new capability in this release is JavaScript extensibility. Makers still set up a Modern List in design studio by picking Dataverse views, enabling record actions and applying styles. When a scenario needs more than that, Microsoft says developers can extend the same list with custom JavaScript instead of replacing it with a separate data grid.
According to the announcement, the Client API lets developers:
- Access the rows and columns loaded in a Modern List.
- Read both raw and formatted row values.
- Respond to list-loading, row-selection and cell-selection events.
- Show, hide or style rows and columns.
- Customise column headers, tooltips and the text displayed in cells.
Microsoft's example is a customer service site that highlights high-priority requests, styles records by status, or reacts when a user selects a record. The company says these customisations keep the list's existing Dataverse views, actions, filtering and security configuration. The benefit is architectural. Before, a team that needed conditional formatting or selection handling often had to rebuild the grid itself, and then maintain its own paging, filtering and permission-aware data retrieval. With the Client API, the platform keeps handling data and security, and the script only changes presentation and responds to events.
The client API overview on Microsoft Learn confirms list support: the API can read and style rows, columns and cells in modern lists. The same page covers much more than lists. It includes forms and controls, validation, Web API record operations, file and image columns, authentication, multilingual content, calls to server logic and cloud flows through an Ajax API, and communication with Copilot Studio agents. Those are features of the wider API and are not part of this Modern List announcement. The documentation's examples use a global variable named $pages and recommend that naming convention, although the variable name is up to the developer.
Preview label on the Client API docs clouds the GA picture
There is a documentation gap here. Microsoft's September 22 blog post says Modern List is generally available and presents custom JavaScript through the Client API as part of the release. The "Power Pages client APIs" page on Microsoft Learn, last updated September 21, 2026, is still titled as a preview. It calls itself prerelease documentation subject to change and repeats Microsoft's standard warning that preview features are not meant for production use and may have restricted functionality.
Microsoft hasn't said whether the list-related parts of the Client API have the same GA status as the Modern List component or still fall under preview terms. The safest reading is that the Modern List component is GA, and the programmatic surface for extending it may still change. Teams with strict production-support policies should get an answer from their Microsoft contacts, or wait for the Learn page to lose its preview label, before building business-critical behaviour on list events.
There is also a history of scripting against the control's internals. In a September 2025 Power Platform Community thread, a respondent said that during the preview the Modern List's "Create" action opened in a new tab, and that because this is a managed control, there is no supported way to override the behavior with custom code. The GA announcement doesn't say whether that behaviour has changed. Its broader point still applies: a documented API is the supported way to change the control, and DOM manipulation is not. Anything the documented API doesn't cover still needs a feature request, not a workaround.
Table permissions still decide what Modern List users can see
Moving to Modern List doesn't change the Power Pages security model, and makers should not assume it does. Microsoft's tutorial for adding a list says that putting a table and view on a page does not by itself let site users see the data. Table permissions have to be configured, and until they are, visitors see a message saying they lack permission. The lists overview adds that when a list links to a details page, the form mode together with the table permissions assigned to the user's web roles decides whether the target form is read-only or editable.
Microsoft's statement that JavaScript customisations "retain" the list's security configuration fits this model. Scripts work on rows the platform has already loaded under the user's permissions. That doesn't make client-side code a security control. Hiding a column with JavaScript is a display choice, not an access restriction, because the data has still been sent to the browser. If a column shouldn't reach a particular audience, remove it from the Dataverse view or restrict it with permissions, and don't rely on a script to hide it.
What this means for Power Pages makers and admins
Your next step depends on whether you're starting a site or maintaining one. Teams building new sites should accept the Modern List default unless they have a specific reason to use classic, such as a page design that depends on pagination. Teams with existing sites can take their time, since nothing converts automatically. When you do convert a list, test it as a planned change and don't just flip the toggle in production.
Microsoft gives two starting points: add a Modern List to a newly created site, or convert an existing list on an existing site. It has published no conversion checklist, compatibility matrix, known-issues list or rollout schedule. A sensible conversion test covers the following, based on the documented behaviour above: view selection and the multi-view dropdown, the switch from pagination to infinite scroll, record actions and details-page links, inline filtering alongside any existing filter configuration, and table permissions for every web role that uses the page. Any custom JavaScript or CSS aimed at the classic list's markup should be treated as likely to break until you've tested it. The Modern List is a different component, and the supported route for extending it is now the Client API.
- New Power Pages sites get Modern List by default, and classic remains available by turning off the Modern list toggle when adding or editing a list.
- Existing classic lists are not converted automatically, so admins can schedule conversions page by page.
- Modern lists replace classic pagination with infinite scrolling, so check user-facing instructions and page layouts that assume numbered pages.
- The Client API can read loaded rows and columns, handle load and selection events, and restyle rows, columns, headers, tooltips and cell text, but the Microsoft Learn documentation for the API is still labelled preview.
- Table permissions and Dataverse view design remain the real access controls, and hiding data with JavaScript does not keep it out of the browser.
- Microsoft has published no performance figures for GA, so measure load behaviour on your own data before promising users speed improvements.
After more than two years in preview, Modern List is now the standard way Power Pages shows Dataverse records, and classic lists are the legacy option. The JavaScript hooks let developers customise the platform's own list without building and maintaining their own grid. When Microsoft removes the preview label from the Client API documentation, custom Modern List code will have clearer production-support status, and conversion becomes an easier decision for enterprise sites that are still on classic lists.