Simple Guidelines When You Design for Mobile
- 952 shares
- 1 year ago
Infinite scrolling is an interaction design pattern in which a page loads content as the user scrolls down, allowing the user to explore a large amount of content with no distinct end. It is often used on social media platforms and feeds where content has no definite structure or sorting order.
Infinite scrolling removes the friction of navigating back—users can simply scroll up. This technique is well suited for mobile, where scrolling is both easy and intuitive.
When a user first visits a site, it loads only a small amount of data, similar to the first page of a series. The website tracks the user’s position on the page. If the user reaches the end of the page, the website fetches the next set of data and displays it. This sequence of actions—detect scroll, request data from the server and display it on the website—can be as quick as a fraction of a second, depending on the amount of content and the internet speed.
Infinite scrolling replaces pagination. Pagination divides content into discrete pages; users must click on the navigation options to move to different pages and view more items.
Infinite scrolling can be used to:
Increase engagement and time spent on the site.
Social media and content-heavy feeds such as blogs and news sites are prime examples of infinite scrolling. These sites aim to keep users engaged and spend the most time on their site. With infinite scrolling, users don’t need to click anywhere and keep receiving endless content.
Facilitate organic content discovery.
Infinite scrolling is useful when users aren’t looking for something specific. When users want something specific, they will likely search for it with precise words and expect to find what they’re looking for within the first few search results. In such cases, asking the user to browse endlessly is not ideal. However, infinite scrolling works well if the user is merely browsing without any specific goal.
Ease navigation on mobile.
Infinite scrolling is well-suited for mobile users, who can easily scroll through content with simple swipes. This is more intuitive and convenient on touch-screen devices than clicking on tiny pagination links.
Designers should be aware of the following issues and limitations of infinite scrolling:
Addiction: While infinite scrolling increases time spent on sites, it is also responsible for creating addictive experiences. After public outcry on the addictive design practices of social media applications, Instagram and YouTube have implemented settings to limit users’ time on the application.
Performance issues: Continuously loading content can lead to significant memory usage, which might slow down the website or app, particularly on devices with limited resources. This can negatively impact the user experience, especially for long browsing sessions.
Navigation challenges: With infinite scrolling, users can find it difficult to locate specific items or return to a previously viewed point in the feed. Without distinct pages, users may not be able to bookmark or share specific content. Often, when a user uses the back button, they must scroll all over again and reload all the content to reach their previous position.
Social media sites exacerbate the problem by loading new content whenever users refresh the page. For example, if you close the Instagram app and return after a few seconds, you’ll notice entirely new items in your feed. If you meant to return to your friend’s exciting post, you might have to manually search for it on their feed.
Some websites automatically update the page URL as the user scrolls to help them retain their position on the page.
Overwhelming content and scrolling fatigue: Infinite scrolling can sometimes overwhelm users with too much content, leading to a paradox of choice where users find it hard to decide what to focus on.
Hidden footer content: Often, websites place essential links and information in the footer, such as contact details, terms of service, and privacy policies. Infinite scrolling can make accessing these links difficult or impossible if new content keeps loading each time the user nears the bottom of the page.
Poor search engine optimization: Search engines traditionally index web pages with distinct URLs. Infinite scrolling pages can be problematic for search engine optimization (SEO) since they might not allow search engines to crawl effectively and index all the available content. Google recommends a paginated series (component pages) in addition to the infinite scroll to address this issue.
Accessibility issues: Infinite scrolling can be challenging for disabled users, particularly those using screen readers or keyboard navigation. Most accessibility controls on a page appear at the top of the page. However, these controls become ever more inaccessible on a page with infinite scroll.
Lack of control and data usage: Users have less control over the content they view, as they cannot quickly jump to a specific page or section. For users on limited data plans, infinite scrolling can lead to unexpected data usage, as more content is loaded without explicit user action.
No end-of-content indicator: In some cases, users might not realize when they have reached the end of the available content, leading to confusion or the misconception that the page is not loading more content.
Before implementing the infinite scrolling pattern to a product, designers should consider different alternatives:
Pagination is the original solution to split large amounts of data across multiple pages. While it increases the number of clicks or taps needed to navigate, it prevents user fatigue, is SEO friendly, and helps people easily skip ahead or move to the first item in the list.
A common way to offer more user control with infinite scroll is through the “Load More” button.
In this video, Senior UX Consultant for the European Parliament and creative lead of Smashing Magazine, Vitaly Friedman, talks about infinite scrolling and compares it with pagination and the load more button.
Infinite scrolling with integrated pagination is a relatively new pattern used by the Google shopping mobile website. Much like infinite scroll, the page continues to load more data at the end of the page. However, the feed also displays page numbers at the locations where the fresh content appears. These page numbers serve as landmarks to help users navigate to specific parts of the page without scrolling back and forth.
Infinite scrolling has its advantages and challenges. Here are some best practices to implement infinite scrolling to achieve the most benefits:
Provide a loading indicator: Users should be able to tell when more content is loading. A clear loading indicator helps manage expectations and improves the overall user experience.
Allow for bookmarking and sharing: Implement a system that allows users to bookmark or share specific parts of the content. You can implement this by dynamically updating URLs or providing anchor links.
Optimize performance: Ensure that the implementation of infinite scrolling is efficient in terms of memory and data usage. Implement techniques like lazy loading, where content is loaded only when needed (as the user scrolls closer to it), to optimize performance.
Implement a “Load More” button: For better user control, give users the option to click a “Load More” button. This can be particularly useful for users on slower connections or devices.
Accessibility considerations: Make sure that the infinite scrolling feature is accessible, especially for users who rely on screen readers or keyboard navigation. Use appropriate ARIA (Accessible Rich Internet Applications) roles and properties to enhance accessibility.
Provide an easy way to navigate to the top: Implement a “Back to Top” button or similar functionality so users can quickly return to the top of the page without having to scroll all the way back.
SEO considerations: For web content, ensure that infinite scrolling doesn't hinder search engine indexing. You might provide a paginated version for search engines or use progressive enhancement techniques.
Manage memory efficiently: Regularly unload off-screen content or use virtual scrolling techniques to manage memory usage effectively and prevent browser slowdowns or crashes.
Indicate the end of content: To avoid confusion, let users know when they have reached the end of the available content.
Test for different devices: Ensure that the infinite scrolling performs well across different devices and screen sizes, taking into account touch interfaces and varying screen resolutions. Use analytics/tracking to measure success.
Consider user preferences: Not all users prefer infinite scrolling, so consider giving them the choice to switch between infinite scrolling and traditional pagination.
Keep the footer accessible: If the footer has important links or information, ensure that users can still access them. You can pause the infinite scroll before the footer or provide a separate navigation menu.
Watch Vitaly Friedman’s Master Classes on Complex UI Design: Practical Techniques and How to Create Complex Tables Users Love: A UI Designer's Guide to level-up your UI skills.
UX consultant Adrian Roselli offers a handy checklist to determine if your implementation impacts accessibility in So You Think You’ve Built a Good Infinite Scroll.
For more on how to make your infinite scroll implementation accessible, see Mozilla’s documentation on the ARIA: feed role.
Smashing Magazine analyzes the pros and cons of this UI pattern in Infinite Scroll: Let’s Get To The Bottom Of This.
NN Group offers context to the integrated pagination technique in Infinite Scrolling: When to Use It, When to Avoid It.
See Google Search Central’s Infinite scroll search-friendly recommendations.
Infinite scrolling and pagination are two distinct methods to display content on websites, each with unique advantages and considerations.
Infinite Scrolling: This approach automatically loads more content as the user scrolls down the page. It's commonly used on social media platforms like Facebook and Instagram. The key advantage is that it offers a seamless, continuous experience without the need to click to the next page, which can be engaging and keep users on the site longer. However, it can be overwhelming for users looking for specific information and can pose challenges for search engine optimization (SEO). Also, it may hinder accessibility, as it can be difficult for screen readers to navigate.
Pagination: Pagination divides content into discrete pages, requiring users to click to view more items. This method is often used in e-commerce sites and data-oriented sites. It provides a more organized experience, allowing users to estimate the amount of content and navigate directly to specific pages. Pagination is better for SEO, as each page can be indexed separately. However, it might interrupt the user's flow and can be less engaging compared to infinite scrolling.
Each method suits different types of content and user expectations. Infinite scrolling is ideal for discovery-based content where users enjoy browsing (like social media feeds), while pagination is better for goal-oriented tasks where users seek specific items (like online shopping).
Learn more about UI design patterns in the IxDF course UI Design Patterns for Successful Software.
Infinite scrolling significantly enhances user experience by offering seamless, uninterrupted browsing, which is particularly effective for content-heavy platforms. When users engage with platforms like social media, news feeds, or image galleries, they benefit from a continuous flow of content without interrupting pagination. This approach simplifies the interaction, as users don't need to click to load new pages.
However, you must balance infinite scrolling with user needs and website goals. If designers don’t implement it correctly, infinite scrolling can lead to issues like loss of orientation, difficulty in finding previously seen content and potential performance issues.
Learn how to design great user experiences. Start with User Experience: The Beginner’s Guide.
While infinite scrolling offers a streamlined and engaging user experience, it presents several drawbacks that designers should consider:
Overwhelming content: Infinite scrolling can lead to information overload, as users are continuously presented with content, making it challenging to absorb and process information effectively.
Navigation and orientation issues: Users may find it difficult to locate previously viewed content or understand how much content remains unseen. This can lead to a loss of control and orientation within the website.
Performance impact: Continuously loading content can impact website performance, especially for users with slower internet connections or limited device memory.
Accessibility concerns: Infinite scrolling can pose challenges for users with disabilities, especially those using screen readers, as it can be difficult to navigate and understand the structure of the content.
Lack of a clear end point: Without a clear end to content, users may not reach important information located at the bottom of the page, like footers or calls to action.
Difficulty in bookmarking: Returning to a specific point in an infinite scroll can be problematic, as the dynamic nature of content loading makes it hard to bookmark or return to a specific location.
Potentially lower engagement: Contrary to its intention, infinite scrolling can sometimes lead to lower engagement, as users might feel overwhelmed and exit the site sooner.
Learn more about UI design patterns in the IxDF course UI Design Patterns for Successful Software.
Infinite scrolling can significantly affect website performance, with both positive and negative implications:
Resource consumption: As users scroll, more content loads continuously, which can consume significant memory and processing resources. This is particularly impactful on mobile devices or in cases where the user's device has limited capabilities.
Network load: Each new load request consumes bandwidth. If not optimized, this can lead to slower loading times and a degraded user experience, especially on slower internet connections.
Browser performance: Infinite scrolling can lead to a slowdown in browser performance over time. As more content is loaded, the browser must keep all the previous content in the document object model (DOM), which can lead to increased memory usage and slower browser response.
Optimization challenges: Implementing infinite scrolling requires careful optimization to ensure that it doesn't negatively impact the site's performance. You can use techniques like lazy loading (loading content only when it's needed) and virtual scrolling (rendering only a small portion of the content at a time) to mitigate performance issues.
SEO impact: Infinite scrolling can also impact search engine optimization (SEO). Search engines traditionally crawl and index web pages with clear pagination. Infinite scrolling pages might not get fully indexed if not properly set up for SEO.
To learn how to design better web experiences, enroll in the course Web Design for Usability.
Infinite scrolling is not suitable for all types of websites. Here are some criteria to determine if infinite scrolling is suitable for a website:
Content type: Infinite scrolling is ideal for websites with a stream of content, like social media feeds or image galleries, where people desire continuous discovery. It's less suitable for content that has structure, like articles or reports, where users might need to find specific information quickly.
User goals: If the primary goal is browsing or exploring without a specific end in mind, infinite scrolling can enhance the experience. However, for task-oriented sites where users seek specific information or perform particular actions, traditional pagination might be more appropriate.
SEO considerations: Infinite scrolling can be challenging for SEO, as content loaded dynamically might not be indexed by search engines. Websites reliant on search engine traffic might prefer pagination.
User navigation and orientation: Infinite scrolling can disorient users who wish to return to a specific point on the page or who want a sense of completion. Websites where bookmarking or returning to a specific point is important might not benefit from infinite scrolling.
Ultimately, the decision to implement infinite scrolling or any other design decision, must be based on sound user research. Learn more in the course User Research – Methods and Best Practices.
Search Engine Optimization (SEO) is a key component of a brand’s strategy to acquire more users. Infinite scrolling can significantly impact SEO in several ways:
Crawling issues: Traditional SEO relies on search engines being able to crawl through different pages easily. Infinite scrolling presents a challenge because the site loads content dynamically, and search engines might not index content that isn't immediately visible on the initial page load.
Load time and resource usage: Infinite scrolling can increase the load time and resource usage of a page, which can negatively impact the site's SEO. Search engines favor websites that load quickly and are efficient in their use of resources.
Difficulty in indexing content: Since content on infinite scrolling pages is loaded as the user scrolls down, search engines may have difficulty accessing and indexing this content. This can result in lower visibility in search engine results.
Lack of unique URLs for content segments: Infinite scrolling often means there are no unique URLs for different sections of content. This makes it hard for users to share specific content and for search engines to direct users to specific parts of a page.
To mitigate these SEO challenges, designers and developers can implement strategies such as pagination for search engine crawlers, lazy loading, and providing direct links to specific content sections.
To make infinite scrolling more accessible, you can use several strategies, such as:
Keyboard navigation: Ensure users can navigate through content using keyboard controls. This includes the ability to scroll using arrow keys and access links or buttons within the infinite scroll area.
Announcements for screen readers: Utilize ARIA (Accessible Rich Internet Applications) roles and properties to announce when new content loads. This helps users who rely on screen readers to understand that more content is available.
Load on demand: Instead of automatically loading new content, consider providing a button to load more items. This gives users control over the content-loading process and is particularly helpful for those with cognitive disabilities who might be overwhelmed by automatic updates.
Performance considerations: Infinite scrolling can consume significant system resources, which might affect users with older hardware or slower internet connections. Implement techniques to optimize performance, like lazy loading images and prioritize content loading.
Positional awareness: Provide indicators or breadcrumbs that help users keep track of their position in the content. This could be as simple as displaying the current number of loaded items or sections.
Easy access to navigation and tools: Ensure that important navigational elements and tools, like search bars and menus, are always accessible and do not get pushed down or lost in the infinite scroll.
For a crash course on accessibility, take the Master Class on Inclusive Design Patterns with Vitaly Friedman.
Here are key strategies to enhance infinite scrolling on mobile:
Performance optimization: Ensure that the loading of content is efficient. Use techniques like lazy loading, where content is loaded only when needed, to minimize data usage and improve speed.
Responsive design: Design the infinite scrolling feature to be fully responsive. This means it should work seamlessly across different screen sizes and orientations to provide a consistent experience.
Touch-friendly UI: Make sure interactive elements are easily tappable. This includes sufficient spacing for touch targets and easy-to-use navigation controls.
Minimize data usage: Optimize images and other media for mobile use to reduce data consumption. Consider offering a 'lite' version of the site or feature for users with limited data plans.
Quick load times: Optimize backend processes to ensure quick load times. Mobile users often have less patience for slow-loading content, and prolonged load times can lead to higher bounce rates.
Battery consumption consideration: Be mindful of battery usage. Heavy scripts and high data load can drain battery life, which can be a significant concern for mobile users.
Clear visual cues and feedback: Provide visual cues or feedback when new content is loading or when the user reaches the end of the content stream.
Accessible design: Ensure that the infinite scroll is accessible to all users, including those using screen readers or other assistive technologies. ARIA (Accessible Rich Internet Applications) roles and properties can be particularly useful here.
Test on multiple devices: Test the infinite scrolling feature on a variety of mobile devices and operating systems to ensure consistent performance and user experience.
Offer user control: Give users the option to pause or opt out of infinite scrolling, especially if the content is data-heavy or if the user is looking for specific information.
Focus on these aspects to create an infinite scrolling experience that is both user-friendly and efficient on mobile devices. For more practical tips and techniques to design for mobile interfaces, see our course, Mobile User Interface (UI) Design.
Infinite scrolling, while popular in certain contexts, can lead to several user frustrations if not implemented thoughtfully. Common user frustrations include:
Loss of control and orientation: Users often feel disoriented as they lose track of their position on the page. Without clear markers, it becomes challenging to find previously seen content or understand how much content is left.
Performance issues: Slow loading times, especially on mobile devices or slower internet connections, can lead to frustration. As more content loads, it can also strain the device's memory, leading to sluggish performance.
Endless content without a clear endpoint: The lack of a clear endpoint can be overwhelming for users who are looking for specific information or like to feel a sense of completion.
Difficulty bookmarking or sharing specific content: Without distinct page breaks or URLs for different sections, users find it challenging to bookmark or share specific parts of the content.
Incompatibility with back button navigation: Often, after clicking on an item and then returning to the infinite scroll, users are taken back to the top of the page instead of where they left off, which can be particularly frustrating.
Accessibility challenges: Infinite scrolling can be difficult for users with disabilities, particularly those using screen readers, as the dynamic loading of content can disrupt the reading flow.
Data and battery consumption: On mobile devices, infinite scrolling can consume more data and drain the battery faster, which can be a concern for users with limited data plans or battery life.
Overwhelming amount of information: Continuous exposure to a stream of content can lead to information overload, making it hard for users to focus on individual items or make decisions.
To mitigate these frustrations, it's important to carefully consider whether infinite scrolling is appropriate for your site's content and audience and, if used, to implement it in a way that addresses these potential pitfalls.
Here are key methods to effectively test the usability of infinite scrolling:
User testing: Conduct user testing sessions where participants interact with the infinite scrolling feature. Observe how easily they navigate, find information, and how they react to the loading of new content. Ask for feedback on their experience.
A/B testing: Compare the infinite scrolling version of a page with a paginated version. Metrics such as time spent on the page, engagement rates, and user satisfaction can provide insights into which method is more effective for your audience. In this video, the CEO of Syntagm, William Hudson, gives an overview of A/B testing and how to decide what to test.
Scroll depth tracking: Use analytics tools to measure how far users scroll down on your pages. This data helps determine if users are engaging with content at the bottom of the page or if they are dropping off at a certain point.
Performance testing: Monitor the site's performance, especially load times and responsiveness, as new content loads. Ensure that the site remains fast and responsive as more content gets loaded.
Accessibility testing: Ensure that the infinite scrolling is accessible, especially for users with disabilities. Test with screen readers and other assistive technologies to ensure that all users can navigate and understand the content effectively.
Load time analysis: Evaluate how the implementation of infinite scrolling affects the load time of your pages. Longer load times can negatively impact usability and user satisfaction.
Feedback mechanisms: Implement feedback mechanisms, such as surveys or comment sections, to gather direct user feedback about their experience with infinite scrolling on your site.
Heatmap analysis: Use heatmap tools to see where users are clicking and how they are interacting with your infinite scroll. This can reveal user behavior patterns and preferences.
Remember, the goal of usability testing for infinite scrolling is to ensure that it provides a smooth, enjoyable, and intuitive user experience that aligns with the goals of your website.
Learn more about usability testing in this comprehensive course dedicated to Conducting Usability Testing.
Yes, infinite scrolling can be combined with other navigation methods to create a more user-friendly and effective web experience. This hybrid approach caters to different user needs and preferences and can also address some of the challenges associated with infinite scrolling. Here are a few ways to combine infinite scrolling with other navigation techniques:
Search functionality: A robust search feature allows users to quickly find specific content without relying solely on scrolling. This is particularly useful for content-rich sites.
Jump-to links: Provide links or menus that allow users to jump to different sections of the site; this can improve navigability, especially on long pages with infinite scrolling.
Back-to-top buttons: Include a "back to top" button to help users quickly return to the top of the page, which is convenient in an infinitely scrolling page.
Pagination at breakpoints: Implement pagination or "load more" buttons after a certain point in the scrolling to give users control over content loading, thereby improving performance and usability.
Sticky navigation and menus: Use sticky menus that remain visible as the user scrolls to help with orientation and provide easy access to other parts of the site.
Breadcrumbs and progress indicators: Breadcrumbs and progress indicators give users a sense of location and progress within the site, which can be particularly useful in infinite scrolling contexts to prevent disorientation.
When you combine infinite scrolling with these navigation methods, you can create more engaging and user-friendly websites, especially for platforms where both browsing and specific content discovery are important. Learn more about these UI design patterns in the IxDF course, UI Design Patterns for Successful Software.
Fessenden, T. (2018, April 15). Scrolling and Attention. Nielsen Norman Group.
This eye tracking study tests old recommendations to keep important content above the fold in the era of long-form content and infinite scrolling.
Montag, C., Lachmann, B., Herrlich, M., & Zweig, K. (2019). Addictive Features of Social Media/Messenger Platforms and Freemium Games against the Background of Psychological and Economic Theories. International Journal of Environmental Research and Public Health, 16(14).
This research identifies six elements of addictive smartphone applications. These elements include psychological/economic theories as well as UI decisions, including infinite scrolling.
Tidwell, J., Brewer, C., Valencia, A. (2020, February 18). Designing Interfaces: Patterns for Effective Interaction Design. O'Reilly Media.
This is a comprehensive book on user interface patterns (including infinite scrolling) for mobile apps, web applications, and desktop software, including real examples and practical design advice you can apply immediately.
Neil, T. (2014, June 10). Mobile Design Pattern Gallery: UI Patterns for Smartphone Apps. O'Reilly Media.
This book covers several UI patterns across several categories, including navigation, tables and forms, to help you deliver stellar user experiences.
Here’s the entire UX literature on Infinite Scrolling by the Interaction Design Foundation, collated in one place:
Take a deep dive into Infinite Scrolling with our course Mobile UI Design .
In the “Build Your Portfolio” project, you’ll find a series of practical exercises that will give you first-hand experience of the methods we cover. You will build on your project in each lesson so once you have completed the course you will have a thorough case study for your portfolio.
Mobile User Experience Design: UI Design is built on evidence-based research and practice. Your expert facilitator is Frank Spillers, CEO of ExperienceDynamics.com, author, speaker and internationally respected Senior Usability practitioner.
We believe in Open Access and the democratization of knowledge. Unfortunately, world class educational materials such as this page are normally hidden behind paywalls or in expensive textbooks.