The New Relic platform is designed to provide visibility through all the different parts of the technology stack to help you quickly troubleshoot any issues that may be degrading the shopping experience for your customers.
That’s important, because your customers have no sense of whether it’s the frontend, backend, infrastructure, or third-party payment processor causing an error—they simply bounce to the competition if they can’t buy what they want. No matter the cause, the frustration of not being able to make a purchase can trigger huge losses for your businesses—lost revenue, customer dissatisfaction, poor site reviews, and more.
Start with your shopping experience
Given that the goal of any e-commerce site is to sell products, let’s start with understanding the technology layer closest to the customer: the website frontend or native mobile app itself. We’ll address web and mobile commerce separately because they have slightly different characteristics.
Let’s run through some of the key business metrics and features that New Relic offers to optimize site performance in the context of business outcomes such as revenue and conversion rates.
Availability: Time is money. If your site is slow and shoppers can’t complete the checkout process, then your customer engagement and business will suffer. That means the first goal is to verify your site is up and running:
- Check browser throughput. When you suspect something has gone wrong, the best test for overall site health is your throughput. Looking at key transactions in the buying journey such as the checkout button in New Relic Browser can reveal whether customers are engaging with your site in real time. If there is a high shopping cart drop-off rate, it could mean buyers aren’t able to buy, possibly due to a problem with your site’s performance or another variable such as an external payment provider, and they’ve bounced from your site in frustration. An unexpected dip in throughput is often a sign that there’s an issue to troubleshoot.
- Set up availability alertsSince you don’t want to be notified of issues by frustrated shoppers who can’t complete their purchases, you want to continually check that your site is up and running by using New Relic Synthetics’ availability monitors. If page-load time is lagging or a third-party API is causing a spike in shopping cart drop-off rates, New Relic can trigger a monitor alert and notify you before your shoppers are even aware of a problem. These monitors can regularly test your website from multiple global locations based on the distribution of your customer base. When coupled with the global throughput information in New Relic Browser’s filterable geographies, you can get a more comprehensive view of your data and a more complete picture of availability than you could with Browser/Synthetics monitoring alone.
- Track uptime service-level agreements (SLAs). Establish the baseline uptime for your site with the SLA report in New Relic Synthetics. These monitors keep tabs on your overall uptime on a daily, weekly, or monthly cadence, which you can communicate to stakeholders throughout your team, business, or customer base.
Functionality: Once you’ve established that your site is up and running, you need to make sure that it’s not broken for your shoppers.
- Validate that key transactions work correctly. Simulate traffic loads and essential user interactions (like browse-to-buy and checkout) with New Relic Synthetics’ scripted monitors to ensure all systems are “go” before a big launch or sale. This will help you identify if something is explicitly broken for your shoppers and to ensure your most important transactions are being exercised every minute from around the globe. The goal is to ensure that any customer-impacting issues, even in the underlying backend and infrastructure layers of your site, will also be detected.
- Set up functionality and error alerts. As with the availability metrics, all of these metrics are integrated with New Relic’s alerting system and can be set up to notify you when anything has gone wrong. Setting up alerts on your most important clicks and buyer flows is particularly useful; notifications here mean critical click paths across your site are broken.
Speed: Now that you know you’re up and running, it’s time to make sure your site is not so slow that it’s generating high shopper bounce rates:
- Triage frontend load times. Identify your slowest page loads in New Relic Browser to see the major bottlenecks in your shopping experience. Leverage percentiles and histograms to better understand what’s happening across your customer base and down to the individual (a small set of pages can skew averages when viewed with less sophisticated tools). Couple this with custom targeting of your site’s most important pages (shopping cart, payment, etc.) to focus your efforts on the areas of greatest impact.
- Configure your frontend Apdex score. New Relic uses an industry standard known as Apdex, which measures users’ satisfaction with your site’s response times relative to a user-defined value. It’s a simplified SLA solution that gives retailers better insight into how satisfied their shoppers are. Set up a frontend Apdex threshold in New Relic Browser to match the responsiveness your customers expect. Then work to improve this benchmark of shopper satisfaction.
- Set up page load speed alerts. Dynamic baseline alerting can help set the thresholds for healthy page-load response times. A gradual degradation of response times could be the precursor to more serious problems and can serve as an early warning signal, especially after a recent code deploy.
Here are some of the key health metrics and features that New Relic offers to track the quality of the customer shopping experience using your mobile app, again using the dimensions of service-level quality discussed above:
- Track app launches. Perhaps the most important question for mobile developers is “Are people using my app?” New Relic Mobile answers this question by tracking how often an app launches. If this number collapses, especially after a new release or mobile OS version, it could mean shoppers are experiencing errors, crashes, or slowness.
- Review crash occurrences. The frustration of opening an app to an immediate crash is often enough to make a shopper delete the app. Crash analysis offers detailed insights into why crashes are occurring in production, with the context needed to help fix them. You can better understand your highest-priority crashes through powerful analytics, filter to focus on high-crash screens, view the most common location in the code associated with crashes, or drill down to an individual customer’s crashes.
- Set up alerts. If your number of app launches falls, or the number of crashes skyrockets, particularly after
a new release, you want to be first to know. Set up alerts on the health of your mobile app to make sure you quickly learn of these customer issues before your app store ratings start to sink with crash complaints.
- Fix HTTP errors. Rarely are mobile apps self-contained. Instead, they’re typically dependent on backend APIs, but limited visibility makes it difficult to debug API errors. Shared context into the backend with HTTP request information can equip mobile developers to be more responsive to API errors and partner more closely with backend teams. Cross-application traces help teams understand the end-to-end path of an HTTP transaction from the mobile app to the corresponding application. Combined with New Relic Synthetics’ API monitoring of the backend, you can proactively identify issues before shoppers experience them.
- Improve HTTP response times. In mobile development, you can only be as fast as your backend APIs. When silos separate mobile and backend developers, performance SLAs are hard to establish and audit. Using New Relic Mobile, you can see the API transactions broken down by location, device, and even connection type. A common language and data showing where milliseconds are being spent helps make performance a responsibility for everyone on the team.
- Track user interaction times. A poorly written piece of mobile code can cause screen stutters, or even lock up a UI thread completely in a hard freeze. New Relic Mobile builds an analysis of the speed of each user interaction in your app, with detailed breakdowns of the most common and slowest interactions. That helps you spend your time where you can make the largest impact, leveraging real interaction data with granularity down to individual customers.
Check through your backend services
Websites and native mobile apps are often powered by a set of supporting APIs and microservices. If these backend services degrade, so can the shopping experience. Fortunately, there are techniques that can make it easier to monitor and debug these backend components to help ensure a consistently high-quality experience for your customers:
- Ensure the health of your backend APIs and microservice topology. Identify your key microservice bottlenecks using New Relic APM service maps and tune their performance. Then set up API monitors in New Relic Synthetics on these services to validate that the services are available, providing the correct API payload responses, and doing so within the response time defined by your SLA. Microservices that are not publicly accessible can be monitored using private minions in New Relic Synthetics.
- Configure your backend Apdex score. Set up an Apdex threshold in New Relic APM to match the responsiveness from your customer base, and align this to your Apdex score in New Relic Browser. You will likely find the greatest opportunity to improve the speed of your page load in the frontend, which is monitored by New Relic Browser. However, this optimization work will often involve jumping into the backend to tune slow endpoints and services.
- Check performance of third-party services. Third party-services for data, payment, inventory, and other functions can create backend dependencies. Any issues with your third-party vendors can cause degradations or crashes; monitor these services and endpoints with New Relic plugins and New Relic Synthetics API monitors—and decouple these external services if necessary.
- Triage backend errors. Review the errors most common in the most important parts of your application errors in New Relic APM error analytics so you can triage and address the ones with the greatest impact on your quality of service.
- Identify key transactions in your services. After identifying your key services, you can start identifying the key application transactions within these services—the most critical path through your most critical services. Flag them as key transactions in New Relic APM for heightened monitoring visibility to help ensure early awareness of any issues.
- Resolve slow application transactions and database calls. Troubleshoot slow-running application transactions or blocked database calls with the greatest impact on your shoppers for tuning and optimization. Triage these bottlenecks in New Relic APM transactions and database pages, respectively, to check overall responsiveness and customer experience.
- Set up backend site alerts. If your web server goes down, your whole shopping experience goes down, so be sure to set up alerts on the most critical areas of your site so you can be notified of the warning signs:
Harden your underlying infrastructure
The foundation of your technology stack is your on-premise, hybrid, and/or cloud infrastructure. Issues at this tier can bring down everything above it, including the customer shopping experience. The measures below can help make sure you have full visibility into how your infrastructure is working:
- Make sure hosts are responsive. Create ‘Host Not Reporting’ alerts in New Relic Infrastructure to find out if you have unresponsive systems.
- Track system resource health and consumption. If your underlying infrastructure goes down, your whole shopping experience goes down, so it’s critical to set up New Relic Infrastructure alerts to ensure key resources like compute, network, and storage are not exhausted or over-provisioned, or that vital processes have not gone down.
- Track configuration changes. Infrastructure changes are a leading cause of outages. Use correlated health metrics in New Relic Infrastructure to make sure your containers and infrastructure don’t go down due to
a bad configuration update, even across different data centers, hybrid environments, third-party e-commerce platforms, or cloud providers.
- Manage capacity and scaling. Leverage load testing to see if you have sufficient infrastructure resources to handle traffic spikes without service degradation as well as for capacity planning for future growth.
- Understand performance of third-party services. Third-party services for data stores, payment, inventory, cataloguing, and others can create backend dependencies. Vendor issues can cause degradations or crashes; for example, you can monitor AWS services and endpoints with New Relic Infrastructure integrations.
- Track performance of Docker containers. Container services create an additional technology layer where system issues may arise. Review Docker health metrics in New Relic to ensure system stability.
- Integrate monitoring into your IT automation workflow. Make sure your configuration management tools include monitoring as part of your infrastructure automation to ensure resources are automatically instrumented for monitoring. New Relic Infrastructure, for example, offers pre-built integrations for Ansible, Chef, and Puppet.
- Review security updates and packages. Zero-day vulnerabilities and outdated packages can expose security vulnerabilities, and can require extensive inventory audits to patch. Quickly search across your infrastructure in seconds using the inventory search function in New Relic Infrastructure to address these security issues.