{"componentChunkName":"component---src-templates-blog-list-template-js","path":"/139","result":{"data":{"allMarkdownRemark":{"edges":[{"node":{"excerpt":"Overview   The “reconciliation” algorithm in React is how the decision to re-render the component is made. In the browser, DOM manipulation…","fields":{"slug":"/engineering/reacts-reconciliation-algorithm/"},"html":"<p><strong>Overview</strong>  </p>\n<p>The “reconciliation” algorithm in React is how the decision to re-render the component is made. In the browser, DOM manipulation is expensive and time consuming, both in mounting and unmounting. Part of what makes React very performant is its reconciliation algorithm.  </p>\n<p>In short, it watches closely for differences, and only updates the DOM when necessary and tries to update only the parts which need to be changed.  </p>\n<p><strong>The “Virtual DOM”</strong>  </p>\n<p>The Virtual DOM is a theoretical DOM tree generated by React when a change is made to a component’s state. This is modeled after the state of your application upon modification of the state, for example, after calling this.setState(). React uses what is called a “snapshot” to make this comparison and analysis between the DOM before the update, and the DOM after. This is the point in time when React utilizes its reconciliation algorithm.  </p>\n<p>Updating the Virtual DOM is much faster than the real DOM, since the browser doesn’t need to show a visualization of it.  </p>\n<p><strong>How updates are determined</strong>  </p>\n<p>The reconciliation algorithm is run whenever the component level state is updated. It analyzes the current DOM with the Virtual DOM, in order to determine which changes need to be made to the real DOM. After this step, it has determined which DOM nodes on your application require updates, and it calls the render method.  </p>\n<p><strong>Effect on DOM elements and their attributes</strong>  </p>\n<p>The reconciliation algorithm does not only look at whole DOM elements, it also looks at individual attributes. You can think of the difference as a PUT request vs. a PATCH request, where it only updates the parts which have changed, rather than updating the entire object if there was a change.  </p>\n<p>While it doesn’t unmount and remount the entire element if it doesn’t have to, sometimes it <em>does</em> have to. An example of this would be if you render an element of a different type.  </p>\n<p>Suppose you wanted to switch between two components or elements, perhaps for conditional rendering. This would result in a full unmounting of the component, regardless of whether or not they contain the same child nodes.  </p>\n<p>This differs from switching attributes on the same type of elements, an example of which might be dynamic class names, based on component state. In this scenario, the DOM element is <em>not</em> destroyed, and only the modified attributes are changed. This is useful because it performs minimal operations on the DOM, which as we know, is more resource-intensive than standard object operations.  </p>\n<p><strong>Keys and rerenders</strong>  </p>\n<p>The \"key\" attribute in React can be used to mark whether or not a DOM node is stable. You may have seen a message in the console if you’ve ever attempted to map over a collection and return a JSX element each iteration. This is because the reconciliation algorithm uses the keys to determine if the content has changed, and not including a key may cause unexpected behaviour. For this reason, the keys should be unique so that reconciliation can recognize and identify which elements are stable, and which elements are not.  </p>\n<p>Suppose that you have a list of items, which is derived from an array. If you were to splice an item into the middle of it, that will change all of the indices of the subsequent items. In this scenario, since the keys will not be a stable, unique representation of each item, React can end up mutating the unintended item, which can cause major bugs.  </p>\n<p>A detailed explanation of keys can be found on the official React docs:</p>\n<p><a href=\"https://reactjs.org/docs/lists-and-keys.html\">Lists and Keys</a></p>\n<p><a href=\"https://reactjs.org/docs/reconciliation.html#keys\">Reconciliation-Keys</a></p>\n<p>For an in-depth exploration of how and why reconciliation was implemented, please visit the official React docs:</p>\n<p><a href=\"https://reactjs.org/docs/reconciliation.html\">Reconciliation</a></p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"December 03, 2019","updated_date":null,"description":null,"title":"React's Reconciliation Algorithm","tags":["React"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":2.2988505747126435,"src":"/static/3b049b298332c75b5f5768c066fe56fa/58556/react-fiber.webp","srcSet":"/static/3b049b298332c75b5f5768c066fe56fa/61e93/react-fiber.webp 200w,\n/static/3b049b298332c75b5f5768c066fe56fa/1f5c5/react-fiber.webp 400w,\n/static/3b049b298332c75b5f5768c066fe56fa/58556/react-fiber.webp 800w,\n/static/3b049b298332c75b5f5768c066fe56fa/e30b5/react-fiber.webp 1000w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Team LoginRadius","github":"LoginRadius","avatar":null}}}},{"node":{"excerpt":"LoginRadius is one of 415 identity companies selected from a pool of over 2,000 to be featured in the report. VANCOUVER, BC – December…","fields":{"slug":"/identity/loginradius-named-ciam-leader-owi/"},"html":"<p>LoginRadius is one of 415 identity companies selected from a pool of over 2,000 to be featured in the report.</p>\n<p>VANCOUVER, BC – December 2, 2019 – <a href=\"https://www.loginradius.com/\">LoginRadius</a>, a leader in cloud-based customer identity and access management (CIAM) solutions, is pleased to announce that </p>\n<p><a href=\"https://oneworldidentity.com/\">One World Identity</a> (OWI) has named LoginRadius as a leader in customer identity and access management (CIAM) in its <a href=\"https://www.prnewswire.com/news-releases/one-world-identity-releases-2019-identity-industry-landscape-300963181.html\">2019 Identity Industry Landscape</a>.</p>\n<p>OWI is a leading market intelligence and strategy firm focused on identity, trust, and the data economy. Its annual Identity Landscape provides a comprehensive and holistic view of leading companies in the identity space. This includes an unparalleled overview of how digital identity applications are evolving, as well as how companies and markets are shaping the next generation of digital identity. </p>\n<p>“Since 2017, the number of identity companies has more than quadrupled, from 500 companies to over 2,000,” said Travis Jarae, CEO and Founder of OWI. “With the wave of data breaches and privacy scandals, there is a rapid expansion of identity products and solutions.</p>\n<p>The OWI team interacts with identity companies every day, from startups to enterprise. We’re proud to share the Identity Landscape each year to distill how new companies, products, and solutions are shaping the future of identity.”</p>\n<p>“LoginRadius is honoured to be one of the 415 identity companies selected from a pool of over 2,000 companies in the industry,”. “We are committed to empowering businesses to safely secure their customers’ identities while complying with existing and future regulations and delivering a unified digital experience</p>\n<p><a href=\"https://www.loginradius.com/resource/guide-to-modern-customer-identity/\"><img src=\"/96b65dafa8f2f84ceb9815f9722b0e82/modern-ciam.webp\" alt=\"modern-ciam\"></a></p>\n<p>The OWI Identity Landscape is a tool to help companies keep track of market growth and trends and understand the strategic importance of digital identity moving into 2020 and beyond. OWI will be releasing a more detailed research report delving into the details of each market segment and how companies within the industry overlap and intersect in upcoming months. </p>\n<p>Download a complimentary copy of OWI’s 2019 Industry Landscape at <a href=\"https://oneworldidentity.com/2019-identity-landscape/\">www.oneworldidentity.com/landscape</a>. </p>\n<p><strong>About OWI</strong></p>\n<p>OWI is a market intelligence and strategy firm focused on identity, trust, and the data economy. Through advisory services, events and research, OWI helps a wide range of public and privately held companies, investors and governments stay ahead of market trends, so they can build sustainable, forward-looking products and strategies. OWI was founded in 2015 and is the host of the <a href=\"https://www.knowidentity.com/\">KNOW Identity</a> Conference that takes place in Vegas April 5-8, 2020.</p>\n<p><strong>About LoginRadius</strong></p>\n<p>LoginRadius is a leading cloud-based <a href=\"https://www.loginradius.com/blog/identity/customer-identity-and-access-management/\">customer identity and access management</a> (CIAM) solution securing more than one billion user identities worldwide.</p>\n<p>The LoginRadius Identity Platform empowers business and government organizations to manage customer identities securely, deliver a unified digital experience, and comply with all major privacy regulations such as the EU’s General Data Protection Regulation (GDPR).</p>\n<p><a href=\"https://www.loginradius.com/contact-us?utm_source=blog&#x26;utm_medium=web&#x26;utm_campaign=loginradius-named-ciam-leader-owi\"><img src=\"/1bebf239d110701b9b534d7eb481a5ac/BD-Plexicon1-1024x310-1.webp\" alt=\"book-a-demo-loginradius\"></a></p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"December 02, 2019","updated_date":null,"description":"LoginRadius is one of 415 identity companies chosen to be included in the study from a pool of over 2,000.","title":"One World Identity Report Names LoginRadius a Customer Identity and Access Management (CIAM) Industry Leader","tags":["media-and-publication","LoginRadius"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.408450704225352,"src":"/static/57a7390f435ce9a0c99194bcda65a867/7f8e9/blog-graphic-one-world-identity.webp","srcSet":"/static/57a7390f435ce9a0c99194bcda65a867/61e93/blog-graphic-one-world-identity.webp 200w,\n/static/57a7390f435ce9a0c99194bcda65a867/1f5c5/blog-graphic-one-world-identity.webp 400w,\n/static/57a7390f435ce9a0c99194bcda65a867/7f8e9/blog-graphic-one-world-identity.webp 768w","sizes":"(max-width: 768px) 100vw, 768px"}}},"author":{"id":"Rakesh Soni","github":"oyesoni","avatar":"rakesh-soni.webp"}}}},{"node":{"excerpt":"If you own or manage an e-commerce business, then you’re aware that a solid customer experience (CX) strategy is vital to success. But…","fields":{"slug":"/growth/improve-customer-experience-ecommerce/"},"html":"<p>If you own or manage an e-commerce business, then you’re aware that a solid customer experience (CX) strategy is vital to success. But before you consider tackling CX, it’s important to understand what it is and what it can do for your business.</p>\n<h2 id=\"what-does-customer-experience-mean-in-ecommerce\" style=\"position:relative;\"><a href=\"#what-does-customer-experience-mean-in-ecommerce\" aria-label=\"what does customer experience mean in ecommerce permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>What does customer experience mean in ecommerce?</h2>\n<p>In the context of e-commerce business and online retail stores, customer experience refers to how a brand manages to engage its customers across the web. </p>\n<p><a href=\"https://www.loginradius.com/blog/2020/04/omnichannel-customer-experience/\">Customer experience describes</a> a customer’s perception of how a company interacts with them, and vice versa. Whether it’s in-store, through mobile, or web, this perception is the driving factor that affects customer behavior. It builds brand memories and encourages brand loyalty. </p>\n<p>Think of CX as the \"fingerprints\" you leave on your customers. Every step of the journey— from the first impression to repeat purchases—is essential. Hence, businesses should evaluate every touchpoint of consumers who shop with you. </p>\n<p><a href=\"https://www.loginradius.com/customer-experience-solutions/\">Pleasant experiences encourage</a> better revenue, positive reviews, and lifelong customers. By contrast, a poor customer experience leads to the opposite. </p>\n<p>Basically, if customers love interacting with you, they’ll recommend you to others and stay with you longer. In many cases, customer loyalty can actually last generations, or for the life of the brand, itself.</p>\n<h2 id=\"why-is-the-customer-experience-a-buzzword-in-e-commerce\" style=\"position:relative;\"><a href=\"#why-is-the-customer-experience-a-buzzword-in-e-commerce\" aria-label=\"why is the customer experience a buzzword in e commerce permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Why is the customer experience a buzzword in e-commerce?</h2>\n<p>These recent stats and predictions shed some light on the question.</p>\n<ul>\n<li>86% of consumers are <a href=\"https://www.walkerinfo.com/Portals/0/Documents/Knowledge%20Center/Featured%20Reports/WALKER-Customers2020.pdf\">willing to pay more</a> for improved customer experience.</li>\n<li>49% of shoppers made impulse buys after <a href=\"https://www.globenewswire.com/news-release/2017/10/25/1300518/0/en/Segment-Survey-Finds-Consumers-Will-Spend-More-When-Their-Shopping-Experience-is-Personalized-but-Most-Retailers-are-Missing-the-Mark.html\">personalized experiences</a>.</li>\n<li>40% of data analytics projects will relate to the customer experience <a href=\"https://www.gartner.com/en/newsroom/press-releases/2018-02-19-gartner-says-25-percent-of-customer-service-operations-will-use-virtual-customer-assistants-by-2020\">by 2020</a>. </li>\n</ul>\n<p>When it comes to providing a superior customer experience, \"people\" and \"product\" are the main drivers. Obviously, your visitors should be impressed by how your product performs. But customers should also be delighted by your customer support agents, should they seek their help. </p>\n<h2 id=\"what-are-some-ways-to-improve-customer-experience\" style=\"position:relative;\"><a href=\"#what-are-some-ways-to-improve-customer-experience\" aria-label=\"what are some ways to improve customer experience permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>What are some ways to improve customer experience?</h2>\n<p><a href=\"https://www.loginradius.com/blog/2019/12/identity-as-a-service-for-business/\">Managing user identity</a> can ensure a smooth and scalable response to the growing demands in customer expectations. To prepare your enterprise business for success during the holiday season, here are five opportunities to consider without breaking the bank. </p>\n<h3 id=\"1-deliver-enhanced-mobile-experiences-to-exceed-rising-consumer-expectations\" style=\"position:relative;\"><a href=\"#1-deliver-enhanced-mobile-experiences-to-exceed-rising-consumer-expectations\" aria-label=\"1 deliver enhanced mobile experiences to exceed rising consumer expectations permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>1. Deliver enhanced mobile experiences to exceed rising consumer expectations.</strong></h3>\n<p>Providing excellent mobile e-commerce (m-commerce) shopping <a href=\"https://www.loginradius.com/blog/2020/05/customer-experience-retail-industry/\">experience can benefit retailers</a> significantly. By 2021, m-commerce sales are expected to be responsible for 54% of overall e-commerce revenue, <a href=\"https://www.bigcommerce.com/blog/mobile-commerce/#why-does-mobile-commerce-matter\">predicts</a> Big Commerce. </p>\n<p><img src=\"/344a7fc14555ba9499a7043b23751893/image-2.webp\"></p>\n<p>This is one of the reasons why your online retail store should be easily accessible on mobile devices, not just desktops and laptops. </p>\n<p>Keep in mind that your mobile sites should be optimized. In fact, Think With Google <a href=\"https://www.thinkwithgoogle.com/marketing-resources/data-measurement/mobile-page-speed-new-industry-benchmarks/\">reports</a> that 53% of customers will abandon your site if it takes over three seconds to load. When they do bounce, chances are they’ll go straight to your competitors. One way to optimize your site is to reduce the file size on your website’s images. </p>\n<p>“<strong>If a (Google) bot finds that your site is hostile to mobile users or loads very slowly, you're going to lose rank.</strong></p>\n<p><strong>–</strong> <a href=\"https://twitter.com/johnelincoln\"><strong>John Lincoln</strong></a><strong>, CEO of Ignite Visibility</strong> </p>\n<p>If more than 30% of your site visitors arrive via their smartphones, create a dedicated mobile app. These are far more efficient than responsive designs and offer a better customer experience. </p>\n<p>Once your mobile app is in place, you’ll need a digital transformation strategy to enhance and update processes and technical capabilities that will meet your customers' demands. </p>\n<p>A solution to this is using a <a href=\"https://www.loginradius.com/blog/2019/10/digital-identity-management/\">digital identity platform</a>. This is a reliable way to engage customers during the holiday season and beyond while enriching their digital experience.</p>\n<h3 id=\"2-your-mobile-strategy-should-satisfy-customers-at-all-touchpoints\" style=\"position:relative;\"><a href=\"#2-your-mobile-strategy-should-satisfy-customers-at-all-touchpoints\" aria-label=\"2 your mobile strategy should satisfy customers at all touchpoints permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>2. Your mobile strategy should satisfy customers at ALL touchpoints.</strong></h3>\n<p>Brick-and-mortar retail isn’t dying. It only dies if you let it by not applying a digital strategy with identity management that personalizes the journey for your customers.</p>\n<p>In fact, Dollar General says that “digitally engaged customers” spend twice as much as the average checkout receipt. To address this, Dollar General launched a convenient “Order online and pick up at store” feature that analysts say could help attract a younger demographic.</p>\n<p>In short, shoppers like to combine digital and mobile shopping with in-person buying experiences. That’s why retailers should include mobile-friendly touchpoints in their marketing strategies. </p>\n<p><strong>Here are strategies for improving customer experience in-store, and out:</strong></p>\n<ul>\n<li>Trigger relevant chat, email, or SMS workflows when users engage with mobile devices.</li>\n<li>Include on-the-spot buyer guides, product fact sheets, and upselling suggestions on your sites and apps.</li>\n<li>Use aggregate e-commerce data from customer identities to build marketing schemes.</li>\n<li>Install in-store kiosks with complementary products, allowing users to compare items.</li>\n<li>Synchronize profile and buying information between devices and physical locations by using <a href=\"https://www.loginradius.com/blog/2019/06/customer-identity-and-access-management/\">customer identity and access management</a> (CIAM) software</li>\n</ul>\n<p>In short, integrating digital and traditional touchpoints using CIAM tools will help you build customer satisfaction and loyalty that lasts.</p>\n<p><strong>“Expect to see more shoppers using mobile, especially as brands begin to encourage more in-store mobile engagement through push notifications and SMS messaging.”</strong> </p>\n<p><strong>–</strong> <a href=\"https://twitter.com/rickkenney\"><strong>Rick Kenney</strong></a><strong>, Head of Consumer Insights, Salesforce</strong> </p>\n<p><img src=\"/f6e73c8ad01fe8675a53f6ef0dc2e454/image-3.webp\"></p>\n<h3 id=\"3-emphasize-the-employee-experience-to-boost-customer-retention\" style=\"position:relative;\"><a href=\"#3-emphasize-the-employee-experience-to-boost-customer-retention\" aria-label=\"3 emphasize the employee experience to boost customer retention permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>3. Emphasize the employee experience to boost customer retention.</strong></h3>\n<p>The best way to leverage the correlation between employee and customer experience is to create an employee experience portal. This portal can be an intranet system that will send customized messages to your employees and further boost their engagement with your customers. </p>\n<p>Kick this strategy off by deploying surveys to employees. This way, you can gain insights into consumer expectations, plus introduce engagement programs and other incentives.</p>\n<h3 id=\"4-use-personalization-techniques-and-loyalty-programs-to-get-ahead-in-e-commerce\" style=\"position:relative;\"><a href=\"#4-use-personalization-techniques-and-loyalty-programs-to-get-ahead-in-e-commerce\" aria-label=\"4 use personalization techniques and loyalty programs to get ahead in e commerce permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>4. Use personalization techniques and loyalty programs to get ahead in e-commerce.</strong></h3>\n<p>One good example of the new generation sales opportunities is the changing face of loyalty programs. About <a href=\"https://www.retailtouchpoints.com/topics/crm-loyalty/loyalty-program-study-70-of-shoppers-prefer-gift-card-rewards-from-online-retailers\">70% of shoppers</a> prefer loyalty programs and gift cards during their holiday shopping, and half of those customers will spend more on purchases than they otherwise would have. </p>\n<p>One right way to achieve an optimized customer experience is by creating an experiential approach. Here are some tips on that.</p>\n<p>Do not simply target customers with product suggestions in their loyalty program based on browsing history. Over one-third of users find this approach invasive. Instead, create a more experiential approach that incorporates predictive selling from user data; this encourages loyalty redemptions and upsells. </p>\n<p>You can also add-in a unique, branded currency to appeal to your shoppers, further augmenting user-targets based on shopping activities.</p>\n<h3 id=\"5-promote-transparency-often-to-foster-good-customer-relationships\" style=\"position:relative;\"><a href=\"#5-promote-transparency-often-to-foster-good-customer-relationships\" aria-label=\"5 promote transparency often to foster good customer relationships permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>5. Promote transparency often to foster good customer relationships.</strong></h3>\n<p>With legislation like <a href=\"https://www.loginradius.com/blog/2019/09/ccpa-vs-gdpr-the-compliance-war/\">GDPR and CCPA</a>, there will be few allowances for mistakes in 2020. E-commerce brands that accidentally make mistakes will have to own up to it and take immediate actions to avoid the backlash. </p>\n<p>With large scale data breaches happening around the world, safety and transparency are being valued more than ever. </p>\n<p>The best e-commerce <a href=\"https://www.loginradius.com/blog/2020/04/loginradius-ciam-retail-ecommerce-business/\">digital experience platform</a> should be GDPR compliant or at least provide the tools to make your brand GDPR-ready. </p>\n<p>Southwest Airlines prides itself on being <a href=\"https://simpleflying.com/southwest-lcc-model/\">the largest low-cost carrier in the world</a>, and it lists transparency as an important driver for its popularity. Their marketing campaign, \"Transfarency\" garnered over 5 million likes on Facebook and earned customer trust for promoting \"no hidden fees or extra charges\" as their value proposition.</p>\n<p><strong>But what about the privacy aspect of it?</strong></p>\n<p>No matter what e-commerce shopping experience you offer your customers, data security should be one of your biggest concerns. Cybercriminals are always on the lookout for loopholes to steal your customer's private data. </p>\n<p>What's worse is that most customers often don’t take the necessary steps to protect themselves. <a href=\"https://www.creditdonkey.com/identity-theft-survey.html\">CreditDonkey</a> reports that 68% of customers use the same password for multiple websites. That’s a good reason for you to be extra vigilant when building a secure e-commerce customer experience. Here’s how you can get started.</p>\n<p><img src=\"/b6b23eca27a881d6c9f25a723e34e8d7/shopping-bags-XMAS_blog-300x150.webp\" alt=\"Woman with shopping bags\"></p>\n<h2 id=\"tips-to-protect-e-commerce-customer-data\" style=\"position:relative;\"><a href=\"#tips-to-protect-e-commerce-customer-data\" aria-label=\"tips to protect e commerce customer data permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Tips to protect e-commerce customer data</h2>\n<ul>\n<li>Collect and store only important customer data that you need. </li>\n<li>Do not store credit card numbers and customer names for a quicker checkout process. </li>\n<li>Demand strong, complex passwords that cannot be hacked or broken easily. </li>\n<li>Optimize your organizational control to prevent leaks and insider attacks.</li>\n<li>Set up website security with <a href=\"https://www.loginradius.com/blog/2019/06/what-is-multi-factor-authentication/\">two-factor authentication</a> and SSL certificates. </li>\n<li>Educate customers and encourage them to identify suspicious behavior. </li>\n<li>Introduce a web application firewall with built-in DDoS protection.</li>\n<li>Keep a backup solution in place to automatically back up files in the event of a breach.</li>\n<li>Conduct security awareness training for your employees, so they know how to spot suspicious activities.</li>\n<li><a href=\"https://www.loginradius.com/resource/infographic/cybersecurity-best-practices-for-enterprise/\">Develop a cybersecurity plan</a> that clearly outlines what to do right after an attack. </li>\n<li>Stay up-to-date with security patches to prevent hackers from exploiting your data. </li>\n<li>Encrypt all passwords and sensitive customer data, so they are never compromised. </li>\n</ul>\n<h2 id=\"conclusion\" style=\"position:relative;\"><a href=\"#conclusion\" aria-label=\"conclusion permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Conclusion</h2>\n<p>When it comes to growing your business, a smart e-commerce customer experience strategy is as important as a marketing strategy. With a customer identity and access management solution, you can get 360-degree customer profiling, with 100% customer consent, across all touchpoints. This allows you to personalize marketing and loyalty programs that engage your audience. And that’s a win-win for you and your customers.</p>\n<p><a href=\"https://www.loginradius.com/contact-us?utm_source=blog&#x26;utm_medium=web&#x26;utm_campaign=improve-customer-experience-ecommerce\"><img src=\"/dc606ee34e1fd846630cfcbae3647780/BD-Developers2-1024x310.webp\" alt=\"Book-a-demo-loginradius\"></a></p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"November 28, 2019","updated_date":null,"description":"A smart e-commerce customer service strategy is as critical as a marketing strategy when it comes to growing your business. You will get 360-degree customer profiling, with 100% customer consent, at all touchpoints, with a customer identity and access management solution.","title":"5 Ways to Enhance Customer Experience in E-commerce","tags":["cx","ecommerce","digital identity"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.492537313432836,"src":"/static/650e7d9f47a06d9982d13d56894deab2/7f8e9/customer-experience.webp","srcSet":"/static/650e7d9f47a06d9982d13d56894deab2/61e93/customer-experience.webp 200w,\n/static/650e7d9f47a06d9982d13d56894deab2/1f5c5/customer-experience.webp 400w,\n/static/650e7d9f47a06d9982d13d56894deab2/7f8e9/customer-experience.webp 768w","sizes":"(max-width: 768px) 100vw, 768px"}}},"author":{"id":"Rakesh Soni","github":"oyesoni","avatar":"rakesh-soni.webp"}}}},{"node":{"excerpt":"You'll learn about JavasScript NaN in this tutorial, how to check whether a value is NaN, and how to effectively handle NaN. What is NaN in…","fields":{"slug":"/engineering/checking-for-nan-in-javascript/"},"html":"<p>You'll learn about JavasScript NaN in this tutorial, how to check whether a value is NaN, and how to effectively handle NaN.</p>\n<h2 id=\"what-is-nan-in-javascript\" style=\"position:relative;\"><a href=\"#what-is-nan-in-javascript\" aria-label=\"what is nan in javascript permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>What is NaN in Javascript?</h2>\n<p>NaN, in JavaScript, can be many things. In fact, it can be almost anything, so long as it is <em>Not a Number</em>. Its type is technically “number” (when evaluated with “typeof”), although it stands for <strong>Not a Number</strong>.  </p>\n<h2 id=\"values-in-nan-javascript\" style=\"position:relative;\"><a href=\"#values-in-nan-javascript\" aria-label=\"values in nan javascript permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Values in NaN Javascript</h2>\n<p>Values can become NaN through a variety of means, which usually involve erroneous math calculations (such as 0/0), or as a result of type coercion, either implicit or explicit.</p>\n<p>A common example is when you run parseInt on a string that starts with an alphabetical character. This isn’t exclusive to parseInt, as it also applies when using explicit coercion with Number(), or with the unary “+” operator.  </p>\n<h2 id=\"how-to-check-nan-in-javascript\" style=\"position:relative;\"><a href=\"#how-to-check-nan-in-javascript\" aria-label=\"how to check nan in javascript permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>How to check NaN in Javascript?</h2>\n<p>Before selecting a method for checking for NaN, <em>how should you</em> <strong><em>not</em></strong> <em>check for NaN?</em></p>\n<p>NaN is a bizarre value in JavaScript, as it does not equal itself when compared, either with the loose equality (==) or strict equality (===) operator. NaN is the only value in the entire language which behaves in this manner with regards to comparisons.  </p>\n<p>For example, if parseInt(“a”) returns NaN, then parseInt(“a”) === NaN will return false. This may seem strange, but it makes perfect sense after thinking about what NaN really is.  </p>\n<p>NaN doesn’t tell you what something is, it tells you what it <strong>isn’t</strong>.  </p>\n<p>These two different strings being passed to parseInt() will both return NaN.</p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"javascript\" data-index=\"0\"><code class=\"grvsc-code\"><span class=\"grvsc-line\"><span class=\"mtk11\">parseInt</span><span class=\"mtk1\">(“</span><span class=\"mtk12\">abc</span><span class=\"mtk1\">”) </span><span class=\"mtk3\">// NaN</span></span>\n<span class=\"grvsc-line\"><span class=\"mtk11\">parseInt</span><span class=\"mtk1\">(“</span><span class=\"mtk12\">def</span><span class=\"mtk1\">”) </span><span class=\"mtk3\">// NaN</span></span></code></pre>\n<p>Both statements return NaN, but are they <em>really</em> the same? Maybe, but it certainly makes sense why JavaScript would disagree, given that they are derived from different string arguments.  </p>\n<p>Here are a few examples of strict inequality comparisons, which demonstrate the inconsistency of NaN.</p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"javascript\" data-index=\"1\"><code class=\"grvsc-code\"><span class=\"grvsc-line\"><span class=\"mtk7\">2</span><span class=\"mtk1\"> !== </span><span class=\"mtk7\">2</span><span class=\"mtk1\"> </span><span class=\"mtk3\">// false</span></span>\n<span class=\"grvsc-line\"><span class=\"mtk4\">true</span><span class=\"mtk1\"> !== </span><span class=\"mtk4\">true</span><span class=\"mtk1\"> </span><span class=\"mtk3\">// false</span></span>\n<span class=\"grvsc-line\"><span class=\"mtk1\">“</span><span class=\"mtk12\">abc</span><span class=\"mtk1\">” !== “</span><span class=\"mtk12\">abc</span><span class=\"mtk1\">” </span><span class=\"mtk3\">// false</span></span>\n<span class=\"grvsc-line\"><span class=\"mtk1\">...</span></span>\n<span class=\"grvsc-line\"><span class=\"mtk4\">NaN</span><span class=\"mtk1\"> !== </span><span class=\"mtk4\">NaN</span><span class=\"mtk1\"> </span><span class=\"mtk3\">// true</span></span></code></pre>\n<h3 id=\"method-1-isnan-or-numberisnan\" style=\"position:relative;\"><a href=\"#method-1-isnan-or-numberisnan\" aria-label=\"method 1 isnan or numberisnan permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Method 1: isNaN or Number.isNaN</h3>\n<p>JavaScript has a built-in method, appropriately named “isNaN,” which checks for NaN. There is a newer function called Number.isNaN, which is included in the ES2015 spec.  </p>\n<p>The difference between isNaN and Number.isNaN is that isNaN coerces the argument into a number type. To avoid complicated and unexpected outcomes, it is often advised to use the newer, more robust Number.isNaN to avoid these side effects.</p>\n<p>Number.isNaN does not perform any forcible type conversion, so it simply returns the boolean based on the parameter.  </p>\n<p>Here is an example of the difference between the two methods:  </p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"javascript\" data-index=\"2\"><code class=\"grvsc-code\"><span class=\"grvsc-line\"><span class=\"mtk11\">isNaN</span><span class=\"mtk1\">(</span><span class=\"mtk4\">undefined</span><span class=\"mtk1\">) </span><span class=\"mtk3\">// true</span></span>\n<span class=\"grvsc-line\"><span class=\"mtk10\">Number</span><span class=\"mtk1\">.</span><span class=\"mtk11\">isNaN</span><span class=\"mtk1\">(</span><span class=\"mtk4\">undefined</span><span class=\"mtk1\">) </span><span class=\"mtk3\">// false</span></span></code></pre>\n<p>isNaN, when passed undefined, returns true because undefined becomes NaN after number coercion. You can test this yourself by running Number(undefined). You will find that it returns NaN.  </p>\n<p>Number.isNaN, on the other hand, returns false. This is because no coercion takes place, and undefined is <em>not</em> NaN, it is simply undefined.  </p>\n<p>It is also important to note that Number.isNaN is a newer (ES2015) <a href=\"https://www.loginradius.com/blog/engineering/16-javascript-hacks-for-optimization/\">method in JavaScript</a>, so browser support for Number.isNaN is not as stable as isNaN, which has been around since ES1 (1997).  </p>\n<h3 id=\"method-2-objectis\" style=\"position:relative;\"><a href=\"#method-2-objectis\" aria-label=\"method 2 objectis permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Method 2: Object.is</h3>\n<p><code>Object.is</code> is a JavaScript method which checks for sameness. It generally performs the same evaluations as a strict equality operator (===), although it treats NaN differently from strict equality.  </p>\n<p><code>Object.is(0, -0)</code> will return false, while 0 === -0 will return true. Comparisons of 0 and -0 differ, as do comparisons of NaN. This concept is called “Same-value-zero equality.”  </p>\n<pre class=\"grvsc-container dark-default-dark\" data-language=\"javascript\" data-index=\"3\"><code class=\"grvsc-code\"><span class=\"grvsc-line\"><span class=\"mtk4\">NaN</span><span class=\"mtk1\"> === </span><span class=\"mtk4\">NaN</span><span class=\"mtk1\"> </span><span class=\"mtk3\">// false</span></span>\n<span class=\"grvsc-line\"><span class=\"mtk10\">Object</span><span class=\"mtk1\">.</span><span class=\"mtk11\">is</span><span class=\"mtk1\">(</span><span class=\"mtk4\">NaN</span><span class=\"mtk1\">, </span><span class=\"mtk4\">NaN</span><span class=\"mtk1\">) </span><span class=\"mtk3\">// true</span></span></code></pre>\n<p><code>Object.is(NaN, NaN)</code> will in fact return true, while we already know that NaN === NaN returns false. That makes this yet another valid way to check if something is not a number.</p>\n<h2 id=\"conclusion\" style=\"position:relative;\"><a href=\"#conclusion\" aria-label=\"conclusion permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Conclusion</h2>\n<p>Between the given methods of checking for NaN, the most common is to use the global isNaN function, or the ES2015 Number.isNaN method. While method #2 is valid, most people will typically use isNaN or Number.isNaN, which were created specifically for checking for NaN.</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n  .dark-default-dark {\n    background-color: #1E1E1E;\n    color: #D4D4D4;\n  }\n  .dark-default-dark .mtk11 { color: #DCDCAA; }\n  .dark-default-dark .mtk1 { color: #D4D4D4; }\n  .dark-default-dark .mtk12 { color: #9CDCFE; }\n  .dark-default-dark .mtk3 { color: #6A9955; }\n  .dark-default-dark .mtk7 { color: #B5CEA8; }\n  .dark-default-dark .mtk4 { color: #569CD6; }\n  .dark-default-dark .mtk10 { color: #4EC9B0; }\n</style>","frontmatter":{"date":"November 22, 2019","updated_date":null,"description":"In this guide you'll learn about JavasScript NaN, how to verify whether a value is NaN, and how to manage NaN effectively.","title":"NaN in JavaScript: An Essential Guide","tags":["JavaScript"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.3333333333333333,"src":"/static/64b659badd7a09c3d955b9c49a7f271f/1f5c5/numbers-1.webp","srcSet":"/static/64b659badd7a09c3d955b9c49a7f271f/61e93/numbers-1.webp 200w,\n/static/64b659badd7a09c3d955b9c49a7f271f/1f5c5/numbers-1.webp 400w","sizes":"(max-width: 400px) 100vw, 400px"}}},"author":{"id":"Greg Sakai","github":null,"avatar":null}}}},{"node":{"excerpt":"Introduction When you respect your consumer's time, they will return the favor with even better involvement on your platform. The benefit of…","fields":{"slug":"/identity/benefits-single-sign-on/"},"html":"<h2 id=\"introduction\" style=\"position:relative;\"><a href=\"#introduction\" aria-label=\"introduction permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Introduction</h2>\n<p>When you respect your consumer's time, they will return the favor with even better involvement on your platform. The benefit of SSO for enterprises runs on a similar concept. </p>\n<p>So, <a href=\"https://www.loginradius.com/blog/identity/what-is-single-sign-on/\">what is SSO</a>, and why does the above statement hold true?</p>\n<p>Single Sign-On or SSO is an authentication process that allows consumers to log in to multiple independent applications with a single set of credentials. With SSO, users can access a suite of applications via one single login, irrespective of the platform, technology, or domain used. </p>\n<p>On a similar note, it is also a challenge for both users and IT administrators to secure thousands of accounts and related user data.</p>\n<p>For both users and IT administrators, securely handling thousands of accounts and related user data is challenging. Enterprises use single sign-on as a single strategy to improve IT security, improve user experience, and cut IT cost in one go. </p>\n<h2 id=\"understanding-single-sign-on-sso\" style=\"position:relative;\"><a href=\"#understanding-single-sign-on-sso\" aria-label=\"understanding single sign on sso permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Understanding Single Sign-On (SSO)</h2>\n<p>Single Sign-On (SSO) is an authentication method that allows users to access multiple applications or systems with a single set of credentials. Here's how SSO works and its key components:</p>\n<h3 id=\"1-authentication-process\" style=\"position:relative;\"><a href=\"#1-authentication-process\" aria-label=\"1 authentication process permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>1. Authentication Process</h3>\n<p>When a user attempts to access an application, they are redirected to the SSO system for authentication. The user provides their credentials (e.g., username and password) once to the SSO system.</p>\n<h3 id=\"2-authentication-token\" style=\"position:relative;\"><a href=\"#2-authentication-token\" aria-label=\"2 authentication token permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>2. Authentication Token</h3>\n<p>Upon successful authentication, the SSO system issues a secure authentication token or session identifier to the user's browser. This token serves as proof of authentication and grants access to authorized applications.</p>\n<h3 id=\"3-token-based-access\" style=\"position:relative;\"><a href=\"#3-token-based-access\" aria-label=\"3 token based access permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>3. Token-based Access</h3>\n<p>The user's browser presents the authentication token to each application they attempt to access within the SSO environment. If the token is valid and the user is authorized, they are granted access without the need to re-enter their credentials.</p>\n<h3 id=\"4-centralized-identity-management\" style=\"position:relative;\"><a href=\"#4-centralized-identity-management\" aria-label=\"4 centralized identity management permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>4. Centralized Identity Management</h3>\n<p>SSO systems typically include centralized identity management capabilities, allowing administrators to manage user accounts, access permissions, and authentication policies from a single console.</p>\n<h3 id=\"5-integration-protocols\" style=\"position:relative;\"><a href=\"#5-integration-protocols\" aria-label=\"5 integration protocols permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>5. Integration Protocols</h3>\n<p>SSO implementations often utilize standard protocols such as Security Assertion Markup Language (SAML), OAuth, or OpenID Connect for integration with various applications and systems. These protocols facilitate secure communication and interoperability between the SSO system and supported applications.</p>\n<p>By adopting SSO, organizations can streamline access management, enhance security, and improve user experience, ultimately driving operational efficiency and productivity across the enterprise.</p>\n<h2 id=\"7-advantages-of-sso-that-every-enterprise-should-know\" style=\"position:relative;\"><a href=\"#7-advantages-of-sso-that-every-enterprise-should-know\" aria-label=\"7 advantages of sso that every enterprise should know permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>7 Advantages of SSO That Every Enterprise Should Know</strong></h2>\n<p>No matter what your role as an end-user might be, you probably don’t like memorizing unique credentials for multiple logins, right? For instance, when a customer calls IT about resetting passwords, an enterprise can lose hours, tech resources, and money. </p>\n<h3 id=\"1-it-increases-employee-and-it-productivity\" style=\"position:relative;\"><a href=\"#1-it-increases-employee-and-it-productivity\" aria-label=\"1 it increases employee and it productivity permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>1. It increases employee and IT productivity.</h3>\n<p>By contrast, a single point of access will reduce wasted time and resources. Here’s how.</p>\n<p>With single sign-on, you can: </p>\n<ul>\n<li><strong>Reduce support calls</strong>: Users with just one password to access all their apps won't require assistance as often.</li>\n<li><strong>Improve user experience</strong>: Since there’s no need to hop between multiple login URLs, or reset passwords, users save between 5 to 15 seconds per login. </li>\n<li><strong>Mitigate security risks</strong>: Employees can use their SSO login credentials on any device, in any web browser, without risking security.</li>\n</ul>\n<p>As you can see, the ability to increase the productivity of end-users is one of the greatest single sign on benefits.  </p>\n<p><a href=\"https://www.loginradius.com/resource/loginradius-single-sign-on/\"><img src=\"/ab06ab634e368aaabe85e57dcb6b0699/DS-LoginRadius-Single-Sign-on-1024x310.webp\"></a></p>\n<h3 id=\"2-it-improves-security-capabilities\" style=\"position:relative;\"><a href=\"#2-it-improves-security-capabilities\" aria-label=\"2 it improves security capabilities permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>2. It improves security capabilities.</h3>\n<p>One misconception about using an SSO solution is that it weakens security. The argument rests on the premise that if a master password is stolen, all related accounts will be compromised. </p>\n<p>In theory, this appears to be true, but with common-sense practices, SSO can actually reduce password theft. How?</p>\n<p>Since users only need to remember one password for multiple applications, they’re more likely to create a stronger (harder to guess) passphrase, and less likely to write it down. These best practices reduce the risk of password theft. </p>\n<p>As explained in the next section, a single sign-on strategy can also be combined with <a href=\"https://www.loginradius.com/blog/identity/what-is-multi-factor-authentication/\">multi-factor authentication (MFA)</a> for extra security.</p>\n<p><img src=\"/45b9758f6e2e60f6cc9e486a7c7e21ca/hacker-blocked-RBA-graphic-7-Benefits-SSO-1024x805.webp\" alt=\"Customer uses SSO while Hacker is blocked via Risk-Based Authentication.\"></p>\n<h3 id=\"3-it-combines-with-risk-based-authentication-rba\" style=\"position:relative;\"><a href=\"#3-it-combines-with-risk-based-authentication-rba\" aria-label=\"3 it combines with risk based authentication rba permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>3. It combines with Risk-Based Authentication (RBA).</h3>\n<p>Here’s how combining RBA with Single Sign-on provides an extra layer of security. </p>\n<p>As mentioned earlier, SSO gives your customer or end-user one “key” to sign in to multiple web properties, mobile apps, and third-party systems using one single identity. </p>\n<p>For even more security, you can combine SSO with risk-based authentication (RBA). With RBA, you and your security team can monitor user habits. This way, if you see any unusual user behavior, such as the wrong IP, or multiple login failures, you can demand extra identification verification. If the user fails at this, you can block them from access. </p>\n<p>This powerful combination can prevent cybercriminals from stealing data, damaging your site, or draining IT resources. </p>\n<h3 id=\"4-it-reduces-password-fatigue\" style=\"position:relative;\"><a href=\"#4-it-reduces-password-fatigue\" aria-label=\"4 it reduces password fatigue permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>4. It reduces password fatigue.</h3>\n<p>To prevent cybercrime, security professionals insist on unique passwords for every single application. This means that the average user must remember dozens of passwords for personal and office use. Unfortunately, this often leads to \"password fatigue.\" </p>\n<p>How does password fatigue hurt enterprises? In short, more passwords, more problems. If customers have a hard time signing in, they’ll leave your site or app before you can convert them.</p>\n<p>A <a href=\"https://baymard.com/blog/password-requirements-and-password-reset\">recent usability study</a> by Baymard Institute proves this point. In this study, Baymard tested existing account users at two e-commerce sites (Amazon and ASOS) and found that 18.75% of users abandon their carts due to forgotten passwords or password reset issues.  </p>\n<p><img src=\"/b7448ff64e79a55ef2eab4e207fae9cb/CART-abandonment-7-Benefits-of-Single-Sign-On-V01.03-08-1024x296.webp\" alt=\" Single Sign-On reduces shopping cart abandonment.\"></p>\n<p>The benefit of single sign-on is that it’s only one password for customers to remember, for all of your applications.</p>\n<h3 id=\"5-it-streamlines-the-user-experience\" style=\"position:relative;\"><a href=\"#5-it-streamlines-the-user-experience\" aria-label=\"5 it streamlines the user experience permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>5. It streamlines the user experience.</h3>\n<p><a href=\"https://www.loginradius.com/customer-experience-solutions/\">Enhanced user experience</a> is one of the most valuable benefits of SSO. As repeated logins are no longer required, customers can enjoy a modern digital experience. The SSO benefits for enterprises include an increase in customer loyalty and higher conversion rates.</p>\n<h3 id=\"6-it-prevents-shadow-it\" style=\"position:relative;\"><a href=\"#6-it-prevents-shadow-it\" aria-label=\"6 it prevents shadow it permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>6. It prevents Shadow IT.</h3>\n<p>Shadow IT is not new to the world of cybersecurity. It refers to unauthorized <a href=\"https://www.csoonline.com/article/3239849/shadow-it-its-not-what-you-think.html\">downloads in the workplace</a>.</p>\n<p>In the past, Shadow IT was limited to employees purchasing software at office supply stores. But as cloud-based downloads become more popular, the potential for risk grows.</p>\n<p>To solve this issue, IT admins can leverage SSO to monitor what apps employees use. Thus, identity theft risks can be thwarted. </p>\n<p>Bonus: With a single platform, a company’s IT or compliance team can ensure that global and local compliance rules are being followed, as well.</p>\n<h3 id=\"7-it-increases-software-adoption-rates\" style=\"position:relative;\"><a href=\"#7-it-increases-software-adoption-rates\" aria-label=\"7 it increases software adoption rates permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>7. It increases software adoption rates.</h3>\n<p>Have you ever given up on a new app because the customer access or sign-up process was a pain? If you have, that’s a “technology fail.”</p>\n<p>Technology should make our lives easier, not cause frustration. Making sign-up or login easier with SSO increases the chance that customers will adopt your technology, use your app, and keep returning for more.</p>\n<p>To help you achieve this, LoginRadius is 100% committed to providing the latest industry-standard authentication technology. </p>\n<p>If SSO sounds like a good choice for your company, here’s how to get started. </p>\n<ul>\n<li><strong>Web SSO</strong>  is a browser-based session management system that allows consumers to access any connected web properties with a single identity.</li>\n<li><strong>Mobile SSO</strong> works the same way as web SSO, except it unifies consumer sessions across multiple connected mobile applications. </li>\n<li><strong>Federated SSO</strong> utilizes IDPs to store and authenticate consumer identities to log in to third-party web portals, mobile applications, and more, depending on their configuration. Several identity protocols like SAML, JWT, OpenID Connect, OAuth, and Multipass are designed to authenticate consumers. </li>\n</ul>\n<p>See how the <a href=\"https://www.loginradius.com/single-sign-on/\">LoginRadius platform provides SSO</a> (and more) in one easy-to-use platform. Book a free demo with us today. </p>\n<h2 id=\"security-considerations-with-sso\" style=\"position:relative;\"><a href=\"#security-considerations-with-sso\" aria-label=\"security considerations with sso permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Security Considerations with SSO</h2>\n<p>While Single Sign-On (SSO) offers numerous benefits, it's essential to address potential security considerations:</p>\n<h3 id=\"1-centralized-access-point\" style=\"position:relative;\"><a href=\"#1-centralized-access-point\" aria-label=\"1 centralized access point permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>1. Centralized Access Point</h3>\n<p>SSO creates a centralized access point for multiple applications, making it crucial to secure this entry point against unauthorized access. Implementing robust authentication mechanisms, such as multi-factor authentication (MFA) and risk-based authentication (RBA), can help mitigate risks.</p>\n<h3 id=\"2-credential-management\" style=\"position:relative;\"><a href=\"#2-credential-management\" aria-label=\"2 credential management permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>2. Credential Management</h3>\n<p>Since users rely on a single set of credentials for multiple applications, securing these credentials becomes paramount. Encourage users to create strong, unique passwords and regularly update them. Additionally, consider implementing password policies and enforcing password complexity requirements.</p>\n<h3 id=\"3-session-management\" style=\"position:relative;\"><a href=\"#3-session-management\" aria-label=\"3 session management permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>3. Session Management</h3>\n<p>Proper session management is vital to prevent unauthorized access to user accounts. Implement session timeout mechanisms to automatically log users out after a period of inactivity. Furthermore, consider implementing techniques such as session encryption and token-based authentication to enhance session security.</p>\n<h3 id=\"4-data-privacy-and-compliance\" style=\"position:relative;\"><a href=\"#4-data-privacy-and-compliance\" aria-label=\"4 data privacy and compliance permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>4. Data Privacy and Compliance</h3>\n<p>Ensure compliance with data privacy regulations, such as GDPR and CCPA, when implementing SSO. Protect sensitive user data by implementing encryption protocols and access controls. Additionally, regularly audit access logs and monitor user activity to detect and respond to any suspicious behavior promptly.</p>\n<h3 id=\"5-vendor-security\" style=\"position:relative;\"><a href=\"#5-vendor-security\" aria-label=\"5 vendor security permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>5. Vendor Security</h3>\n<p>When choosing an SSO provider or solution, thoroughly assess their security measures and protocols. Ensure that the vendor follows industry best practices and complies with relevant security standards. Additionally, consider conducting security assessments and audits of the vendor's infrastructure and processes to verify their security posture.</p>\n<p>By addressing these security considerations proactively, businesses can maximize the benefits of SSO while maintaining robust security measures to protect user data and mitigate potential risks.</p>\n<h2 id=\"roi-analysis-of-sso-implementation\" style=\"position:relative;\"><a href=\"#roi-analysis-of-sso-implementation\" aria-label=\"roi analysis of sso implementation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>ROI Analysis of SSO Implementation</h2>\n<p>Implementing Single Sign-On (SSO) can yield significant returns on investment (ROI) for businesses:</p>\n<h3 id=\"1-cost-savings\" style=\"position:relative;\"><a href=\"#1-cost-savings\" aria-label=\"1 cost savings permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>1. Cost Savings</h3>\n<p>SSO reduces IT support costs by minimizing password-related support calls and helpdesk inquiries. With fewer password resets and account lockouts, IT resources can be allocated more efficiently, resulting in cost savings for the organization.</p>\n<h3 id=\"2-productivity-gains\" style=\"position:relative;\"><a href=\"#2-productivity-gains\" aria-label=\"2 productivity gains permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>2. Productivity Gains</h3>\n<p>By streamlining the authentication process and eliminating the need for multiple logins, SSO enhances user productivity. Employees spend less time managing credentials and navigating authentication processes, allowing them to focus on core tasks and projects.</p>\n<h3 id=\"3-security-enhancements\" style=\"position:relative;\"><a href=\"#3-security-enhancements\" aria-label=\"3 security enhancements permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>3. Security Enhancements</h3>\n<p>While security considerations are paramount, implementing SSO with robust authentication measures can enhance overall security posture. By reducing the risk of password-related vulnerabilities and enforcing stronger authentication methods, businesses can mitigate the potential costs associated with data breaches and security incidents.</p>\n<h3 id=\"4-improved-user-experience\" style=\"position:relative;\"><a href=\"#4-improved-user-experience\" aria-label=\"4 improved user experience permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>4. Improved User Experience</h3>\n<p>SSO enhances user experience by providing seamless access to multiple applications with a single set of credentials. This improves user satisfaction and loyalty, leading to increased engagement and retention rates.</p>\n<h3 id=\"5-compliance-benefits\" style=\"position:relative;\"><a href=\"#5-compliance-benefits\" aria-label=\"5 compliance benefits permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>5. Compliance Benefits</h3>\n<p>SSO facilitates centralized access control and authentication management, simplifying compliance with regulatory requirements. By enforcing consistent access policies and auditing user activity, businesses can demonstrate compliance with industry regulations and avoid non-compliance penalties.</p>\n<p>By conducting a comprehensive ROI analysis, businesses can quantify the financial benefits of SSO implementation and make informed decisions about investing in this technology to drive efficiency, productivity, and security across the organization.</p>\n<h2 id=\"faqs\" style=\"position:relative;\"><a href=\"#faqs\" aria-label=\"faqs permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>FAQs</h2>\n<p><strong>1. What are the benefits of SSO and MFA?</strong></p>\n<p>SSO enhances user experience by allowing access to multiple applications with one login, while MFA adds an extra layer of security, reducing the risk of unauthorized access.</p>\n<p><strong>2. Why is SSO needed?</strong></p>\n<p>SSO simplifies access management by allowing users to use one set of credentials for multiple applications, streamlining authentication processes and enhancing productivity.</p>\n<p><strong>3. What is SSO between two applications?</strong></p>\n<p>SSO between two applications enables users to log in once and access both applications seamlessly without the need to re-enter credentials, enhancing user experience and efficiency.</p>\n<p><strong>4. What is the single sign-on method?</strong></p>\n<p>Single sign-on (SSO) is an authentication method that allows users to access multiple applications or systems with a single set of credentials, improving convenience and security.</p>\n<p><a href=\"https://www.loginradius.com/contact-us?utm_source=blog&#x26;utm_medium=web&#x26;utm_campaign=benefits-single-sign-on\"><img src=\"/8fce571f703a5970dbb1359a2fe0e51a/book-a-demo-loginradius.webp\" alt=\"book-free-demo-loginradius\"></a></p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"November 12, 2019","updated_date":null,"description":"Now that more enterprises are moving to the cloud, customers expect seamless access from anywhere, anywhere, and on any computer, to multiple applications. Likewise, as most large corporations have hundreds of touchpoints under different labels, trying to handle them all will strain their IT departments.","title":"7 Benefits of Single Sign-On (SSO) and Why Your Business Needs It","tags":["single sign on","mfa","cx"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.5037593984962405,"src":"/static/56a2932000a4dfedbc029cd6315bc440/7f8e9/benefits-sso.webp","srcSet":"/static/56a2932000a4dfedbc029cd6315bc440/61e93/benefits-sso.webp 200w,\n/static/56a2932000a4dfedbc029cd6315bc440/1f5c5/benefits-sso.webp 400w,\n/static/56a2932000a4dfedbc029cd6315bc440/7f8e9/benefits-sso.webp 768w","sizes":"(max-width: 768px) 100vw, 768px"}}},"author":{"id":"Rakesh Soni","github":"oyesoni","avatar":"rakesh-soni.webp"}}}},{"node":{"excerpt":"We're delightfully Announcing SDK Version 10.0.0.  This full-version release includes major changes with several improvements and…","fields":{"slug":"/engineering/sdk-version-10-0-0/"},"html":"<p>We're delightfully Announcing SDK Version 10.0.0. </p>\n<p>This full-version release includes major changes with several improvements and optimizations, the details have been given below. For complete information please visit <a href=\"https://www.loginradius.com/docs/api/\">LoginRadius API documents</a>.</p>\n<h3 id=\"new-features-added\" style=\"position:relative;\"><a href=\"#new-features-added\" aria-label=\"new features added permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>New Features Added:</strong></h3>\n<ul>\n<li><strong>Added PIN Authentication feature APIs.</strong> : We have added the PIN authentication feature. By enabling this feature Customer can provide PIN code for the authorization process. For more details please refer to the <a href=\"https://www.loginradius.com/docs/api/v2/customer-identity-api/authentication/pin-authentication/overview/\">PIN Authentication Document</a>.</li>\n<li><strong>Added Consent Management feature APIs. :</strong> The Consent Management feature allows collecting consent details from the new or existing customers so that you can further use that data.</li>\n<li><strong>Added Local SOTT generation (Secured one-time token):</strong> SOTT is used for LoginRadius user registration via the authentication API or via the Javascript Interfaces. Now SOTT can be generated from the SDK. More detail on SOTT Usage can be seen <a href=\"https://www.loginradius.com/docs/api/v2/customer-identity-api/sott-usage\">here</a>.</li>\n</ul>\n<h3 id=\"improvements-and-optimizations\" style=\"position:relative;\"><a href=\"#improvements-and-optimizations\" aria-label=\"improvements and optimizations permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>Improvements and optimizations:</strong></h3>\n<ul>\n<li>Added internal parameter validations in the API function.</li>\n<li>ApiKey and ApiSecret usage redundancy removed.</li>\n<li>All LoginRadius related features need to be defined once only and SDK will handle them automatically.</li>\n<li>Improved the naming conventions of API functions for better readability.</li>\n<li>Better Error and Exception Handling for LoginRadius API Response in SDK.</li>\n<li>Completely revamped each SDK and restructured them with the latest API function names and parameters.</li>\n<li>Added detailed description to API functions and parameters for better understanding.</li>\n<li>Updated the SDK demos according to the latest SDK changes.</li>\n</ul>\n<h3 id=\"new-apis\" style=\"position:relative;\"><a href=\"#new-apis\" aria-label=\"new apis permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>New APIs:</strong></h3>\n<p>We have added new APIs in this release, that will complement the existing ones.</p>\n<ul>\n<li>Update Phone ID by UID</li>\n<li>Upsert Email</li>\n<li>Role Context profile</li>\n<li>MFA Resend OTP</li>\n<li>User Registration By Captcha</li>\n<li>Get Access Token via Linkedin Token</li>\n<li>Get Access Token By Foursquare Access Token</li>\n<li>Get Active Session By Account Id</li>\n<li>Get Active Session By Profile Id</li>\n<li>Delete User Profiles By Email</li>\n<li>Verify Multifactor OTP Authentication</li>\n<li>Verify Multifactor Password Authentication</li>\n<li>Verify Multifactor PIN Authentication</li>\n<li>Update UID</li>\n<li>MFA Re-authentication by PIN</li>\n<li>Pin Login</li>\n<li>Forgot Pin By Email</li>\n<li>Forgot Pin By UserName</li>\n<li>Reset PIN By ResetToken</li>\n<li>Reset PIN By SecurityAnswer And Email</li>\n<li>Reset PIN By SecurityAnswer And Username</li>\n<li>Reset PIN By SecurityAnswer And Phone</li>\n<li>Forgot Pin By Phone</li>\n<li>Change Pin By Token</li>\n<li>Reset PIN by Phone and OTP</li>\n<li>Reset PIN by Email and OTP</li>\n<li>Reset PIN by Username and OTP</li>\n<li>Set Pin By PinAuthToken</li>\n<li>Invalidate Pin Session Token</li>\n<li>Submit Consent By ConsentToken</li>\n<li>Get Consent Logs</li>\n<li>Submit Consent By AccessToken</li>\n<li>Verify Consent By AccessToken</li>\n<li>Update Consent Profile By AccessToken</li>\n<li>Get Consent Logs By Uid</li>\n<li>Album With Cursor</li>\n<li>Audio With Cursor</li>\n<li>Check-In With Cursor</li>\n<li>Event With Cursor</li>\n<li>Following With Cursor</li>\n<li>Group With Cursor</li>\n<li>Like With Cursor</li>\n</ul>\n<h3 id=\"removed-apis\" style=\"position:relative;\"><a href=\"#removed-apis\" aria-label=\"removed apis permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a><strong>Removed APIs:</strong></h3>\n<p>To cope up with the changes around the social platforms, we have removed some existing APIs as they are no longer supported by the social providers. Below are the details of those APIs.</p>\n<ul>\n<li><strong>GetCompanies API:</strong> This API was used to get the list of companies from social sites. we removed this API because it is not supported by the social providers</li>\n<li><strong>Getstatus API:</strong> This API was used to get the status from social sites.</li>\n</ul>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"October 31, 2019","updated_date":null,"description":null,"title":"SDK Version 10.0.0","tags":["Engineering","SDK","Version"],"pinned":null,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.3333333333333333,"src":"/static/b5a4efdaf136c68376dc3010819e3e7e/1f5c5/SDK.webp","srcSet":"/static/b5a4efdaf136c68376dc3010819e3e7e/61e93/SDK.webp 200w,\n/static/b5a4efdaf136c68376dc3010819e3e7e/1f5c5/SDK.webp 400w","sizes":"(max-width: 400px) 100vw, 400px"}}},"author":{"id":"Indrasen Kumar","github":"indrasen715","avatar":null}}}}]},"markdownRemark":{"excerpt":"Identity is evolving, and developers are at the forefront of this transformation. Every day brings a new learning—adapting to new standards…","fields":{"slug":"/identity/developer-first-identity-provider-loginradius/"},"html":"<p>Identity is evolving, and developers are at the forefront of this transformation. Every day brings a new learning—adapting to new standards and refining approaches to building secure, seamless experiences.</p>\n<p>We’re here to support developers on that journey. We know how important simplicity, efficiency, and well-structured documentation are when working with identity and access management solutions. That’s why we’ve redesigned the <a href=\"https://www.loginradius.com/\">LoginRadius website</a>—to be faster, more intuitive, and developer-first in every way.</p>\n<p>The goal? Having them spend less time searching and more time building.</p>\n<h2 id=\"whats-new-and-improved-on-the-loginradius-website\" style=\"position:relative;\"><a href=\"#whats-new-and-improved-on-the-loginradius-website\" aria-label=\"whats new and improved on the loginradius website permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>What’s New and Improved on the LoginRadius Website?</h2>\n<p>LoginRadius’ vision is to give developers a product that simplifies identity management so they can focus on building, deploying, and scaling their applications. To enhance this experience, we’ve spent the last few months redesigning our interface— making navigation more intuitive and reassuring that essential resources are easily accessible.</p>\n<p>Here’s a closer look at what’s new and why it’s important:</p>\n<h3 id=\"a-developer-friendly-dark-theme\" style=\"position:relative;\"><a href=\"#a-developer-friendly-dark-theme\" aria-label=\"a developer friendly dark theme permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>A Developer-Friendly Dark Theme</h3>\n<p><img src=\"/f46881583c7518a93bb24e94c32320de/a-developer-friendly-dark-theme.webp\" alt=\"This image shows how LoginRadius offers several authentication methods like traditional login, social login, passwordless login, passkeys and more in a dark mode.\">    </p>\n<p>Developers spend long hours working in dark-themed IDEs and terminals, so we’ve designed the LoginRadius experience to be developer-friendly and align with that preference.</p>\n<p>The new dark mode reduces eye strain, enhances readability, and provides a seamless transition between a coding environment and our platform. Our new design features a clean, modern aesthetic with a consistent color scheme and Barlow typography, ensuring better readability. High-quality graphics and icons are thoughtfully placed to enhance the content without adding visual clutter.</p>\n<p>So, whether you’re navigating our API docs or configuring authentication into your system, our improved interface will make those extended development hours more comfortable and efficient.</p>\n<h3 id=\"clear-categorization-for-loginradius-capabilities\" style=\"position:relative;\"><a href=\"#clear-categorization-for-loginradius-capabilities\" aria-label=\"clear categorization for loginradius capabilities permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Clear Categorization for LoginRadius Capabilities</h3>\n<p><img src=\"/e5358b82be414940f3fb146013845933/capabilities.webp\" alt=\"This image shows a breakdown of all the LoginRadius CIAM capabilities, including authentication, security, UX, scalability and multi-brand management.\"></p>\n<p>We’ve restructured our website to provide a straightforward breakdown of our customer identity and access management platform capabilities, helping you quickly find what you need:</p>\n<ul>\n<li>Authentication: Easily understand <a href=\"https://www.loginradius.com/blog/identity/authentication-option-for-your-product/\">how to choose the right login method</a>, from traditional passwords and OTPs to social login, federated SSO, and passkeys with few lines of code.</li>\n<li>Security: Implement no-code security features like bot detection, IP throttling, breached password alerts, DDoS protection, and adaptive MFA to safeguard user accounts.</li>\n<li>User Experience: Leverage AI builder, hosted pages, and drag-and-drop workflows to create smooth, branded sign-up and login experiences.</li>\n<li>High Performance &#x26; Scalability: Confidently scale with sub-100ms API response times, 100% uptime, 240K+ RPS, and 28+ global data center regions.</li>\n<li>Multi-Brand Management: Efficiently manage multiple identity apps, choosing isolated or shared data stores based on your brand’s unique needs.</li>\n</ul>\n<p>This structured layout ensures you can quickly understand each capability and how it integrates into your identity ecosystem.</p>\n<h3 id=\"developer-first-navigation\" style=\"position:relative;\"><a href=\"#developer-first-navigation\" aria-label=\"developer first navigation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Developer-First Navigation</h3>\n<p><img src=\"/a8c155c2b6faf3d5f4b4de4e2b14d763/developers-menu.webp\" alt=\"This image shows the LoginRadius menu bar, highlighting the developer dropdown.\">   </p>\n<p>We’ve been analyzing developer workflows to identify how you access key resources. That’s why we redesigned our navigation with one goal in mind: to reduce clicks and make essential resources readily available.</p>\n<p>The new LoginRadius structure puts APIs, SDKs, and integration guides right at the menu bar under the Developers dropdown so you can get started faster. Our Products, Solutions, and Customer Services are also clearly categorized, helping development teams quickly find the right tools and make informed decisions.</p>\n<h3 id=\"quick-understanding-of-integration-benefits\" style=\"position:relative;\"><a href=\"#quick-understanding-of-integration-benefits\" aria-label=\"quick understanding of integration benefits permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Quick Understanding of Integration Benefits</h3>\n<p><img src=\"/b2f9a964a2da0ea83e2f8596b833bba7/we-support-your-tech-stack.webp\" alt=\"This image shows a list of popular programming languages and frameworks offered by LoginRadius.\"></p>\n<p>Developers now have a clear view of the tech stack available with LoginRadius, designed to support diverse business needs.</p>\n<p>Our platform offers pre-built SDKs for Node.js, Python, Java, and more, making CIAM integration seamless across popular programming languages and frameworks.</p>\n<h2 id=\"over-to-you-now\" style=\"position:relative;\"><a href=\"#over-to-you-now\" aria-label=\"over to you now permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Over to You Now!</h2>\n<p>Check out our <a href=\"https://www.loginradius.com/\">revamped LoginRadius website</a> and see how the improved experience makes it easier to build, scale, and secure your applications.</p>\n<p>Do not forget to explore the improved navigation and API documentation, and get started with our free trial today. We’re excited to see what you’ll build with LoginRadius!</p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n  }\n  \n  .grvsc-code {\n    display: inline-block;\n    min-width: 100%;\n  }\n  \n  .grvsc-line {\n    display: inline-block;\n    box-sizing: border-box;\n    width: 100%;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-line-highlighted {\n    background-color: var(--grvsc-line-highlighted-background-color, transparent);\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, transparent);\n  }\n  \n</style>","frontmatter":{"date":"February 21, 2025","updated_date":null,"description":"LoginRadius’ vision is to give developers a product that simplifies identity management so they can focus on building, deploying, and scaling their applications. To enhance this experience, we’ve redesigned our website interface, making navigation more intuitive and reassuring that essential resources are easily accessible.","title":"Revamped & Ready: Introducing the New Developer-First LoginRadius Website","tags":["Developer tools","API","Identity Management","User Authentication"],"pinned":true,"coverImage":{"childImageSharp":{"fluid":{"aspectRatio":1.7857142857142858,"src":"/static/80b4e4fbe176a10a327d273504607f32/58556/hero-section.webp","srcSet":"/static/80b4e4fbe176a10a327d273504607f32/61e93/hero-section.webp 200w,\n/static/80b4e4fbe176a10a327d273504607f32/1f5c5/hero-section.webp 400w,\n/static/80b4e4fbe176a10a327d273504607f32/58556/hero-section.webp 800w,\n/static/80b4e4fbe176a10a327d273504607f32/99238/hero-section.webp 1200w,\n/static/80b4e4fbe176a10a327d273504607f32/7c22d/hero-section.webp 1600w,\n/static/80b4e4fbe176a10a327d273504607f32/1258b/hero-section.webp 2732w","sizes":"(max-width: 800px) 100vw, 800px"}}},"author":{"id":"Rakesh Soni","github":"oyesoni","avatar":"rakesh-soni.webp"}}}},"pageContext":{"limit":6,"skip":828,"currentPage":139,"type":"///","numPages":164,"pinned":"ee8a4479-3471-53b1-bf62-d0d8dc3faaeb"}},"staticQueryHashes":["1171199041","1384082988","2100481360","23180105","528864852"]}