• Account & Billing

  • Billing

  • How do I cancel my account?

    To cancel your paying account, please email us at hello@raygun.io or contact us through the app by clicking Feedback. We will action your request promptly.

    Your data will remain available for the remainder of your retention window should you wish to reactivate your account.

  • How do I temporarily disable Raygun products?

    To disable Raygun products, simply remove the Raygun API key from your application. This means Raygun will no longer be monitoring your application.

    You can enable Raygun again by re-inserting the API key back into your application.

  • I want to change my billing details

    If you have a personal (non-organisation) account and want to modify your billing details, begin by logging in to Raygun and clicking on your name in the top-right.

    Select Account Settings -> Billing Details.

  • On your pricing table, what is an application?

    In Raygun, an application is a container for your crash reports relating to software you have written. It’s a logical container, not necessarily a physical container.

    It is entirely your choice about what denotes an application. For example:

    • For a small software team where all developers work on all the code of a website, an application might be the website, its background services, etc.
    • For a medium software team, you may have an application per component (e.g. website, and email service, and search indexer).
    • For a large software team you may want to break a single software application into multiple applications in Raygun (e.g. the website is one app in Raygun, and the check flow is another application because developers on your team are focused on different areas of the software).

    All you need to do to change the application in your code is to use a different API key (one is issued with each application you create in Raygun). It really is up to you where the boundaries are for an application. There are several things to keep in mind however:

    • Notifications via email are per-user, per-application. So making sure your team members can turn off messages for applications they don’t care about is important. It helps them maintain a healthy inbox, and means when they get a Raygun notification they know it’s something of importance that relates to them.
    • Similarly, integrations (e.g. with slack, Jira, etc) are per-application. This means if you want to direct certain errors to a different slack channel, or have them work with a different project in Jira, then you’d want to make sure your app boundaries work with that.
    • Team visibility is managed at the application level also. If you have applications you do not want some teams to see, then you would want to create separate applications in Raygun so you can control the visibility.

    As always with Raygun, if you’d like some advice on managing applications then please don’t hesitate to get in contact with our team who can help.

  • What currency are the plan costs listed in?

    The plans are listed in US dollars on the plan pricing page. This amount is charged per month. As per usual, when your credit card is billed the payment processor may convert it to your local currency if you have a non-US credit card, using the current exchange rate. Depending on your location, you may also have the option for your credit card to be billed in your local currency directly.

  • What payment types do you accept?

    You can use a credit card with Raygun - we accept Visa, Mastercard and American Express.

    If you have specific requirements, for instance if your organization requires a purchase order, please email us.

  • Organisations & Teams

  • Does Raygun provide single sign-on?

    Yes, single sign-on is available for customers on an Enterprise level plan. 

    We support the SAML2 (Security Assertion Markup Language) standard for authenticating users and logging them into the application.

  • How do I invite a user to join my organization?

    Log in using an account that is in the Owners team in the organization.

    In the menu bar, click on [Your Organization Name] -> Teams -> Users.

    Enter their email address, then click Invite.

     

  • How do I remove a user from my organization?

    You must be a member of the Owners team.

    In the menu bar, click on [Your Organization Name] -> Teams -> User's team.

    Click the Remove button to revoke their access to your organization and Raygun.

  • How do I update my organization's billing details?

    Ensure you are logged in as the organization owner.

    Click on your name in the top-right -> Settings -> Organizations in the sidebar.

    Select the organization you wish to alter, then click Billing Details.

  • I want an app to be viewable by my entire organization

    Log in with an organization owner account.

    In the menu bar, select [Your Organization Name] -> Teams -> Users team.

    This is the master list of all users in your organization.

    Adding an app to this team, under Manage Applications, will allow it to be viewed by everyone that was invited to your organization.

  • I want to administer more than one organization

    If you want to create a second organization, or invite users to it, click on your name in the top-right, then select Application Settings -> Organizations.

    From here you can create a new organization, or select the one you want and add users to one of the teams in it.

  • I want to allow a team to view an app

    Firstly, the application must have been created by you or another owner account. 

    Log in with your organization owner account, then in the menu bar select [Your Organization Name] -> Teams, then select the team you want.

    Under Manage Applications, you will find a drop-down with a list of applications you have created, and can assign a new app at the bottom of the list.

  • I want to remove a user from my organization

    Go to your organization settings page (find this by visiting an app owned by the organization, then click on the organization's name in the header bar then Settings), then click Teams -> Users. Click the Remove button in a user's row to remove them from your organization. They will no longer be able to view your applications.

    They will need to have their own paying account to continue using Raygun with their personal applications.

  • What is a team?

    A team belongs to an organisation. All users are automatically placed in the default Users team when they accept their invite to an organisation.

    Applications can be assigned to a team by the organisation owner; all users in that team will then be able to view the application.

  • What is an organization?

    An organization allows many users to access a set of applications, with the owner of the organisation account being the only one that has a paying subscription. All other users are invited by the owner account.

     

    One owner account chooses to become an organization by clicking on the Organization option in the Account Settings menu (available under the master account's name in the top-right).

    The owner account can choose to create as many organisations as they desire. Once this is done, users can be sent invite links to join Raygun with accounts that are free (are paid for through the master account's subscription).

     

    An organisation can have many teams, which contain individual users. Users are automatically placed into the default Users team when they accept their invite. Applications can be added to teams, which are then viewable by all users in that team.

    The original organisation owner account can invite other users (for instance an account that belongs to the Billing department, or the CTO) to be owners by assigning them to the Owners team.

  • What is the Users team?

    It is the default team which all users in your organization are automatically assigned to.

    You can invite users to your organization by inviting them into this team.

    If you add an app under this team, all users in your organization will be able to view it.

  • Plans

  • What does each plan type give me?

    Small

    • USD $49/month
    • 5 applications
    • 180 days data retention
    • 25,000 errors per month

    Medium

    • USD $149/month
    • 20 applications
    • 180 days data retention
    • 250,000 errors per month

    Large

    • USD $499/month
    • 50 applications
    • 180 days data retention
    • 3,000,000 errors per month

     

    Enterprise

    Contact us for custom plans, custom terms or an on-site version.

    Search functionality gives you full-text search across every error instance that is in your current data retention window.

    Team management allows you to pay with one account, invite unlimited amounts of other developers to explore your apps, and assign them into teams with permissions.

    Integrations allow you to send errors directly into issue trackers like GitHub, YouTrack, Fogbugz etc, or send them into messaging services like HipChat, Slack and more.

  • What happens when errors fall outside my plan's range?

    When you are approaching your error event limit, we will notify you by email. You can elect to upgrade your account and continue processing new errors or we will cap errors and stop recording new ones. Your monthly error event quota will then be replenished at your next billing date.

  • Security

  • How do I prevent sensitive data getting sent to Raygun Crash Reporting and Pulse?

    At Raygun, we are serious about your privacy and sensitive information. Our software gives you the unique ability to drill down into individual user sessions so you can provide exceptional customer service. However, you may not want this potentially sensitive customer information from being collected by Raygun (especially if you work in the healthcare or finance industry.)

    You can easily prevent sensitive data from coming into Crash Reporting or Pulse.

    In Crash Reporting, this is done by excluding the error payload keys you don’t want captured. Learn more

    In Pulse, you can remove identifiable customer information by excluding selected keys from the user object. Learn more

  • How secure is my data?

    Raygun is committed to providing a secure service. We use a variety of strategies to protect your information from unauthorized access, use or disclosure. Learn more

    We enforce SSL/TLS for all API communications (over HTTPS). You and your users data is protected using industry standard techniques.

    For the providers, potentially sensitive information (such as data from particular form fields) can be blacklisted so they are never transmitted. 

    Unique user tracking is an optional feature if you wish to enforce privacy for your users.

    For more information, please email us.

  • Notifications

  • How can I configure Raygun notifications to differentiate between environments, such as production, staging, dev or test?

    You can configure Raygun emails to differentiate between environments (such as production, staging, dev or test) by setting up separate apps for separate environments. This will allow you to control notifications, team members etc. to multiple apps.

    Learn how you can set up applications in Raygun for optimal error monitoring.

  • Why am I not getting immediate notifications about new errors?

    Raygun will notify you the moment an error occurrs with a 'first sighting' email. Typically this arrives with customers a few seconds after the first notification appears on your Crash Reporting dashboard.

    However, if you then ignore that notification, we start doing roll ups over time. This means that we start to report on the error group, not the individual error occurance.

    This can be an issue if you ignore the error group at its first sighting, because you may not be instantly notified when the error reoccurs (maybe the error was a low priority issue when it first appeared, for example).

    The best solution is to mark the error group as 'resolved' as this will trigger an 'error reoccurred' email immediately.

    The reason we don't have an option to send an email on every single instance is cost. To keep the prices as attractive as they are, we cannot afford to send emails on every error (and you wouldn't really want that anyway – many customers generate tens of millions of errors a month!).

    To clarify, we only send error notifications for new errors (first sighting), for errors that you have marked as resolved or ignored that subsequently are seen again (repeating errors) and if an active error continues to occur after 1 minute, 5 minutes, 10 minutes, 30 minutes or 60 minutes. You will not receive an email notification for every error occurrence.

  • Crash Reporting

  • ASP.NET error tracking

  • Can I inspect HTTP request data?

    Yup! When a user sends a GET, POST or other HTTP request the relevent data is viewable for each error group and each instance within the group. Drill down onto an error group and you'll see the Request tab - this will contain data like the URL, IP, query string, user agent, referer, form data - pretty much anything contained in the HTTP request.

    This goes for all web server environments where request data is available, not just ASP.NET - you get the same with Rails, PHP, Node.JS, etc.

  • Does Raygun have a public REST API?

    The ability to make HTTP GET requests against the API endpoint to access error data directly using REST URLS is a demanded feature and we're excited about bringing this feature to you. We want it to have rock-solid design and provide significant added value for you, so it's currently in the pipeline and currently scheduled for release in 2015.

  • How can I add Raygun to my ASP.NET application?

    We have included information in the ASP.NET setup section of our Documentation available here.

    If you have any other issues please feel free to contact us.

  • Why add Raygun to my ASP.NET site?

    The workflow for implementing, debugging and testing an ASP.NET project locally on your dev machine is relatively straightforward - you've got the yellow screen of death containing the stack trace, and you can attach the Visual Studio debug then step through/inspect your site's logic. When it comes time to deploy to production, you need to know when users encounter bugs and the stack trace data for the bug that allows you to zero in and fix the bug locally.

    Traditionally this has been done by using a logging framework, and for simple cases this can work. However, it's laborious and just provides the stack trace and files where the exception was raised - and you might have to manually trawl through the logs to find a particular occurrence. No alerts when an error occurs, no grouping of similar errors, and no environment data - and you have to share it with your team manually.

    Raygun fixes this - by adding the Raygun4NET provider to your ASP.NET project, all exceptions will be automatically sent to Raygun. Loading the Raygun dashboard in your browser will give you and your team the stack trace, request data, machine environment data and lots more (you can of course add your own custom data too). Exceptions are intelligently grouped - if there is a bug in a controller that depends on POST data, only one error group will appear in Raygun, no matter what the user sends. You can view all instances of the error that occurred using the powerful interactive chart. You also receive email alerts and daily aggregate reports so you have an overview of your site's health.

    Raygun's also got strong integration with other popular tools in your workflow, including issue trackers like GitHub and FogBugz, and team chat apps like HipChat and Campfire.

  • C# error tracking

  • Can I use Raygun with my Visual Basic .NET project?

    Yup! You can grab Raygun4NET and add it as a reference, then attach the exception handlers or make calls to Send as usual. Currently our code examples are in C# - you can either use an online language translator to get them in Visual Basic syntax, or email us and we'll be happy to give you an example.

  • What C# frameworks can I use with Raygun?

    Raygun, through the official Raygun4NET provider, has first-class support for the following frameworks:

    • ASP.NET
    • WPF
    • WinForms
    • WinRT
    • Xamarin - iOS
    • Xamarin - Android
    • .NET base class library

    The latter will allow support with the greater .NET ecosystem, including WCF, XNA, WF, etc.

  • Coldfusion error tracking

  • How do I add Raygun to my ColdFusion site?

    We have included information in the ColdFusion setup section of our Documentation available here.

    If you have any other issues please feel free to contact us.

  • Issue tracker plugins

  • How can I create issues in YouTrack from my Raygun errors

    Go to http://app.raygun.io, select the application whose errors you want to place in your issue tracker, click Application Settings -> Plugins -> YouTrack

    Enter your YouTrack URL (including the http://), your project name and your credentials, then select Enabled and click Save.

    Visit your app's dashboard, then click on an error group. Look for the blue button in the top-right - clicking it will give you then option to create a new issue, or link with an existing one in your project.

  • I get a 404 when activating the GitHub plugin

    This problem can occur when you first try to activate the GitHub plugin from the Account Settings -> Plugins -> GitHub page.

    After logging in and clicking the button which asks you to grant Raygun access to your account, you recieve a 404 error. When you return to Raygun, the GitHub plugin will not have been activated.

    This is due to your GitHub profile missing an entry in the Name field, under Account Settings.

     

    To fix this, go to GitHub -> Account Settings (beside your name in the top right) -> Profile. Enter your name (first, last or a nickname) then save.

    Go back to the Plugins page in Raygun, begin the GitHub activation again, and it will succeed in linking your accounts

  • What issue tracker and project management platforms does Raygun support?

    We have first-class support for GitHub, JIRA, FogBugz, and Sprintly. Linking your account or server with Raygun is a simple matter of entering credentials, which is done through the Application Settings page. Raygun also includes support for several team communication products (see below).

  • Nancy error tracking

  • How do I add Raygun to my Nancy web app?

    Nancy is a great lightweight web framework for .NET and Mono. Follow these steps to add Raygun's automatic error reporting when your Nancy site throws an exception

    Install Nancy.Raygun using Nuget:

    PM> Install-Package Nancy.Raygun

    In your Web.config, add:

    <configSections>
      <section name="RaygunSettings" type="Nancy.Raygun.RaygunSettings, Nancy.Raygun" />
    </configSections>
    <RaygunSettings apikey="* your api key goes here *" />
    
  • Node.JS error tracking

  • I want to add Raygun to my Node.js app

    We have included information in the Node.js setup section of our Documentation available here.

    If you have any other issues please feel free to contact us.

     

  • Notification service plugins

  • How can I get error notifications sent to HipChat?
    1. In Raygun, on the application sidebar, click Integrations, then HipChat.
    2. Click the Setup tab, then insert your HipChat API key. 
    3. Insert the 'Room ID' you wish to have the Raygun notifications sent to.
    4. Tick the 'Enabled' checkbox to enable the plugin.
    5. You're done! Notifications will now be sent to your HipChat room as they occur in Raygun!

    View the full instructions.

  • What team communication platforms does Raygun support?

    Raygun has built-in support for Slack, HipChat, Campfire, Trello and more - check out the full list of integrations

    Enable integrations by visiting the application dashboard in Raygun, then clicking on Integrations and then the integration you wish to link with.

  • PHP error tracking

  • How do I add Raygun to my PHP site?

    We have included information in the PHP setup section of our Documentation available here.

    If you have any other issues please feel free to contact us.

  • Rails error tracking

  • How do I add Raygun to my Rails site?

    We have included information in the Ruby on Rails setup section of our Documentation available here.

    If you have any other issues please feel free to contact us.

  • Using Raygun

  • Can I add comments to errors?

    Yup - you'll find when you click on an error group there's a large Activity block - clicking on this will display an input box where you can add comments. Markdown is fully supported, too. If you have an organization account, these will be viewable by your team (anyone who has the access rights to view that app).

  • Can I put all of my environments into one application?

    IIf you want to use one application for multiple environments, you can use tags to differentiate between the environments. Tags are useful for filtering the dashboard, and filters apply to the error groups too, meaning you can drill into the error groups and see the instances tagged with the environment variable.

    If you have a small team, you may want to have all the environments together in one application. However, if you have a large team, you may want to break environments up into separate applications. The decision is entirely yours.

     

    A Raygun application per environment is recommended

    The benefits of breaking apart environments into separate applications are:

    • Notifications are controlled at the per-app level
    • Integrations are managed at the per-app level
    • Visibility to teams is managed at the per-app level

    It's super easy to see errors specifically from dev, test and production environments. You can do this by creating additional applications and therefore having a separate API keys for each environment. 

    Adding things like custom properties to error messages on the fly provides a clunky and notoriously bad user experience. Multiple applications set up to handle environments offers a far better user experience and makes sure everything is kept neat and tidy whilst per application notification rules allow you to be notified by environments you need to be (like production when things are affecting your users).

    Do you still have questions about the best way to set up your applications? Please don’t hesitate to get in contact with our team!

  • How do I send custom data from my JavaScript web app?

    There's two ways: the first is passing an array in as the third parameter to init(). This way, the data, variables or objects will be sent with every message. For instance, to send the document url and a string representing the HTTP method:

    Raygun.init('yourApiKey', null, [document.URL, "GET"]);
    

     

    The second method is for manual sending (in a catch block). Pass an array as the second parameter to send():

    catch(e) {
    	Raygun.send(e, [document.URL]);
    }
    

     

  • I can't find where to subscribe for email error notifications for my app

    Navigate to the notification management page by choosing "My Notifications" from the top-right drop-down menu.

    Once on the "My Notifications" management page you'll be presented with options to do any of the following:

    • Choose whether to receive our newsletter, which includes product updates and other news.
    • Select whether or not you want to receive a Daily Digest, which covers activity in selected applications over the last 24 hours
    • Choose which specific applications you want to get notifications from
    • Select what type of notifications you receive
  • We have one application, but numerous instances with different URLs. Is this a problem?

    You have one product or ‘application’ as you might call it, so you only need one application in Raygun right? Well, this is possible but not recommended.

    If you want to have one Raygun application monitoring errors across your entire stack then you certainly can, but using one Raygun application and one API key means that all errors from your product are then contained under a single Raygun application. By doing this, when viewing your Raygun dashboard you’ll see errors from all sorts of languages, platforms, environments and URLs – not very useful, right?

    When looking for the highest priority issues or problems you care about the most it’s going to be far better to have things broken down into logical order and seperated from each other. But what is the best way to set this up?

     

    Set up multiple applications for each part of your application

    Rather than have a single application and API key set up to handle all errors that are sent to Raygun, it’s best to set up multiple applications and have multiple API keys for each part of your application. For example, if your backend is built in Node.js, you want to monitor Javascript errors on your front end website and you also have an iOS and Android app to monitor, having multiple applications gives you the benefits of having errors sorted by programming language and platform as well as optimal grouping logic and custom setup options for each language.

    Do you still have questions about the best way to set up your applications? Please don’t hesitate to get in contact with our team!

  • Windows Phone error tracking

  • How do I add Raygun to my Windows Phone app?

    Create a RaygunClient instance and pass in your app API key into the constructor. In the UnhandledException event handler of App.xaml.cs, use the RaygunClient to send the arguments.

    private RaygunClient _client = new RaygunClient("YOUR_APP_API_KEY");
    
    private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
    {
      _client.Send(e);
    }
  • WinRT error tracking

  • How do I add Raygun to my WinRT app?

    You need to attach a new event handler to the UnhandledException event. For instance, in your main class that inherits from Application:

    public App()
    {
      UnhandledException += App_UnhandledException;
    }
    
    void App_UnhandledException(object sender, UnhandledExceptionEventArgs e)
    {
      var rg = new RaygunClient("YOUR_API_KEY");
      rg.Send(e);
    }

    Limitations

    The options available in WinRT for catching unhandled exceptions at this point in time are more limited compared to the options in the more mature .NET framework. The UnhandledException event will be raised when invalid XAML is parsed, in addition to other runtime exceptions that happen on the main UI thread. While many errors will be picked up this way and therefore be able to be sent to Raygun, others will be missed by this exception handler. In particular asynchronous code or Tasks that execute on background threads will not have their exceptions caught.

    A workaround for this issue is provided with the Wrap() method. These allow you to pass the code you want to execute to an instance of the Raygun client - it will simply call it surrounded by a try-catch block. If the method you pass in does result in an exception being thrown this will be transmitted to Raygun, and the exception will again be thrown. Two overloads are available; one for methods that return void and another for methods that return an object.

  • WordPress error tracking

  • How do I send errors from my WordPress site to Raygun?

    Firstly, you need WordPress running on a server with PHP 5.3 and the curl library.

    You can then follow the instructions in the WordPress setup section of our Documentation available here.

    If you have any other issues please feel free to contact us.

  • What errors will I see once I add Raygun to my WordPress site?

    Bugs in server-side PHP code that cause your visitors to see 500 errors are automatically caught and sent to Raygun. Many of these are caused by broken and inefficient plugins - you can upgrade, replace or disable these, leaving your site running faster and more reliable.

    You can also enable 404 error reporting, which will transmit them to Raygun when someone tries to access a page that doesn't exist. This allows you to see when people are trying to access resources that are missing, leading to you gaining back lost opportunities and impressions.

  • Xamarin error tracking

  • How do I add Raygun to my Xamarin iOS or Android app?

    We have included information in the Xamarin setup section of our Documentation available here.

    If you have any other issues please feel free to contact us.

  • Pulse

  • Introduction to Pulse

  • Can I use Pulse and Crash Reporting independently?

    Yes, but they are better used together. Pulse goes hand in hand with Raygun’s current exception handling capabilities, which alert developer teams to errors in their application’s code that are causing crashes and bad user experiences.

    Pulse gathers information from Crash Reporting to inform you of the latest crashes, the number of crash free users in a date range, and tells you the exact pages where users encounter errors during a session. For a seamless Pulse experience and to view these useful insights, you need to have Crash Reporting enabled.

  • How is Pulse different from Google Analytics and Pingdom?

    Pulse can show you exactly who the user is (if you have user tracking enabled and the user is logged in to your site/app), drill into individual sessions to see the user's navigation path, the user's device and platform, as well as any crashes the user experienced among other features. Pulse also breaks down the full performance timings from users, then aggregates them into reports on the Performance tab. This is something that isn't available on Google Analytics or Pingdom.

    Google Analytics is a very high-level analytics product. While it collects all the data, it takes a sample of the data for reports. There is also no identifiable information, just an aggregation of trends. Google Analytics is great for charts, but doesn't give you major insights around your site/app's performance.

    Pingdom's real user monitoring product provides basic performance information, but it's not particularly easy to dig deeper into the data to figure out exactly what is going on. Like Google Analytics, Pingdom doesn't tie data back to identified users.

    Beyond other analytics tools, Pulse ties all the information back to actual users, so you can track of trends and keep one step ahead of customers.

  • What are the benefits of using Pulse?

    Pulse is for anyone in your company who needs to monitor and improve user experience - developers and product managers to name a few.

     

    Developers

    You can monitor user experience (based on page load time) and crashes in real time. Once you know crashes are happening on certain parts of your site/app, you can take action to fix them immediately for your end users. You must enable Crash Reporting to be able to see crash data in Pulse:

    You can also view the slowest pages in your site/app. If you find any page load times that are unacceptably slow, you can view a granular breakdown of the load time, load distributions and a full waterfall of how the page loads based on a sample request from the period. All this information is available just by clicking on the page URI in the Performance tab:

    The slowest assets are also listed. Like the slowest pages, you just click on the URI of the asset for further information. You can view the median load time over a period, as well a the number of views:

     

    Product Managers

    How do you know if certain pages are inconveniently slow for users - or worse - stop working altogether? Pulse works seamlessly with Crash Reporting, so you can monitor your site/app in real time, view the latest crashes, and prioritise bug fixes for your team.

    Because Pulse monitors your site/app in real time, you know where the current pain points are for your customers through crashes, the slowest pages and the slowest assets. You can use this information to plan new features and update current ones.

    Your site/app is all about the customer. Pulse provides key customer information such as device and platform use, location and user traffic. If you want to know how users navigate through your site/app, you can view user sessions to see the exact pages users visit, how long they stay on particular pages and view any crashes during a session:

    With Pulse, you can look at trends and improve user satisfaction so you’re always one step ahead of your customers.

  • What is Pulse Insights?

    Pulse Insights is a powerful feature which analyzes your web pages for performance issues that your users are experiencing and suggests ways for you to fix them.

    Pulse Insights allows you to:

    • Automatically scan your website once a week for performance issues
    • Sort website performance problems by page/issue
    • Understand how to solve performance problems
    • See how these issues are affecting your site’s UX
    • Rank your best/worst performing pages by effective UX
    • Improve your site’s UX with our simple workflow
    • See the impact of your improvements on UX

    You can think of it as an automatic PageSpeed or YSlow analysis of public pages across your site, so you can easily pick up regressions. You can also see actionable tasks you can do to improve your customer experience.

    Pulse Insights is a free addition to all paid Pulse subscriptions. The number of pages scanned varies with different Pulse subscriptions.

  • What is Pulse?

    Pulse is real user monitoring application that provides insights for your application and enables you to easily target and diagnose issues that your users encounter.

    You can see exactly where issues are occurring on their production website, including page load speeds, interactions with Ajax scripts and where users are having issues.

  • What sort of sites/apps can Pulse track?

    Pulse can track your website, web application and single page applications. Pulse also tracks pages that require authentication. For example, if you have a site that requires user logins, Pulse tracks the pages and load times for logged in users.

  • Who is Pulse for?

    Developers, support staff, marketing staff, product managers, project managers...Basically, anyone in your company who needs to monitor and improve user experience.

  • Why do I have to activate Pulse and Crash Reporting product separately?

    To use Pulse you'll need to add a small snippet of JavaScript code to your webpage, or include the setup code within your mobile application.

    Raygun Crash Reporting supports all major programming languages and platforms and each Raygun Crash Reporting provider has unique functionality and grouping methods. .

    Each product can be used independently, or together for increased issue visibility but you’ll need to go through the setup instructions for each product in order to send data to Raygun.

  • Improving performance metrics

  • How can I reduce the numbers of users experiencing crashes?

    Crash Reporting complements Pulse seamlessly by alerting you of any recent crashes, listing the latest crashes, showing you which users any crash affects, and listing the errors that occurred during a user’s session.

    To have these features included in Pulse, you must have Crash Reporting enabled.

  • How do I improve the Health Score of my site/app?

    The Health Score in the Live tab shows the current responsiveness of your site/app based on the average page load time of the last 1,000 requests.

    Improving the average load time of the site/app will improve the Health Score.

  • How do I improve the User Satisfaction metric?

    The User Satisfaction score in the Users tab indicates how the average user experiences your site/app based on page load times.

    Improving the average load time of the site/app will improve the User Satisfaction metric.

  • What kind of actions can I take to improve the performance of my site/app?

    Improving your site/app’s average load time is a good way of increasing the Health Score on the Live tab, and the Page Speed on the Performance tab, and the User Satisfaction metric on the Users tab.

    A good place to start would be to look at the Slowest pages and the Slowest assets in the Performance tab and see if there are any improvements you can make based on the load time details. For example, if you see a slow JavaScript item in the Slowest assets table, you can check whether it needs to be minified.

  • Pulse settings

  • Will the Pulse Settings affect my team members?

    All the settings under the Default display settings apply only to your account. This means you  can customize them without impacting your teammates.

    The Page path segment rules apply to the whole application and affects your whole team.

  • Using Pulse

  • Can Pulse work with single page applications?

    Yes! Pulse supports client-side single page applications (SPA) through the trackEvent function.

    If you have the trackEvent function configured, it will collect available timing information when a route or view change is triggered. Pulse displays these as ‘virtual pages’, and they are separate from static page loads. The ‘virtual pages’ timing information will contain child data that occurred during the view - for instance XHR and CSS/image requests.

    You can view the Most viewed virtual pages table in the Performance tab.

  • I have Crash Reporting, what do I need to do to add Pulse to my site/app?

    To add Pulse to your site, you just need to add a few code snippets to your markup. Learn more.

  • Is there a way to view the user’s IP address?

    Yes. Go to the Sessions tab, and go into a user session by clicking the magnifying glass on the right side of a Sessions table:

    View the IP address in the Session overview:

  • What does Pulse consider a session?

    View the definition of a session here.

    For infinitely scrolling pages, a new session will be recorded if the user has been idle for half an hour. If a user performs an action after half an hour has elapsed, a new session will be recorded. This is the same behaviour for regular sites/apps.

  • What is a session?

    A session is defined as a set of activity by a user within a half hour block. If a user performs an action after half an hour has elapsed since their previous one, a new session will be recorded.

    If a user is active (clicking around your website) for hours, it will count as one session. Unless they became inactive (did not engage with your website) by longer than 30 minutes. After 31 minutes of inactivity, if they've re-engaged with your website again, it will be counted as new session.

    If a user is not logged into your site/app, Pulse identifies them by using GUID (global unique identifier). We define these as anonymous users. These are users who do not have a user account for your site/app. You can choose to include these users in tables when there is an 'Include anonymous users' checkbox on the upper left corner. Alternatively, you can include anonymous users by default in these tables by changing your Pulse settings.

  • What is the difference between the Health Score, Page Speed and User Satisfaction?

    The Health Score on the Live tab shows how responsive the site currently is based on the page load time. It is calculated as a rolling average of the last 1,000 requests. The score is categorised as follows:

    • Excellent is under 500ms
    • Good is between 500ms and 1000ms
    • Average is between 1000ms and 4000ms
    • Poor is at 4000ms and over

    The Page Speed on the Performance tab reflects an 'average of averages' by combining the median, average and 90th percentile load times to smooth outlieres in the data and give a high-level indication of the page speed. The categories are: Excellent, Good, Average and Poor.

    The User Satisfaction metric on the Users tab indicates how the average user experiences the site based on page load times. If you also have Crash Reporting enabled, this score will also take into account the errors encountered by users. The page load times are divided into three categories according to page load speed:

    • Score is Excellent if average page speed is under 1000ms
    • Score is Average if average page speed is between 1000ms and 4000ms
    • Score is Poor if the average page speed is over 4000ms
  • What is the difference between the median and the average?

    The median is the midpoint of a set of numbers. You can see medians in the Average Load Time located on the Performance tab, and also in the Median length located on the Session tab.

    In Pulse, the term ‘average’ is synonymous with the mean. The average value is calculated by adding up the numbers in a set and then dividing the total by the quantity in the set. You can see averages in the Load time located on the Live tab, the Average Load Time located on the Performance tab, and the Daily active users located on the Users tab.

  • Why are the number of users different on different tabs?

    In Pulse, there are two places where the number of users are displayed - on the Active Users section in the Live tab and the New Users and Returning Users metrics on the Users tab. Here is why you may encounter different user numbers in these tabs:

     

    Live tab

    In the Active Users section in the Live tab, you can see the total number of users, new and returning users that are currently on your site or app. The Total is calculated by the number of unique user id’s. This takes into account people who are signed in to your site/app and also anonymous users who do not have a login.

    The Returning users metric is calculated by subtracting the New user count from the total number of current users.

    The anonymous user’s user id is stored until the user clears their cookies, changes devices or changes the browser. If any of these three things happen, the user will be recorded as a new user.

     

    Users tab

    In the Users tab, the New Users metric shows the number of new users in a date range. Numbers below 1,000 are displayed as they are with no rounding. Numbers over 1,000 are rounded to the nearest 1,000.

    The Returning Users metric is calculated by subtracting the new user count from the total number of users in the date range. Like the New Users metic, numbers below 1,000 are displayed as they are with no rounding. Numbers over 1,000 are rounded to the nearest 1,000.

    The New Users and Returning Users metrics both include anonymous users.

    In the User Traffic table, the Daily active users metric is calculated by the total number of users in a date range, divided by the number of days. This is then rounded to the nearest whole number.

    The Monthly active users metric shows the number of unique users on your site/app within the last month of the selected time range. For example, if you have a time range from 15 June - 15 July, only the unique users within 1-15 July will be included.

    You can choose to include anonymous users in the Daily active users and Monthly active users metric by clicking the checkbox on the upper right corner of the table.

  • Why are there different users and session counts?

    A session is defined as a set of activity by a user within a half hour block. If a user performs an action after half an hour has elapsed since their previous one, a new session will be recorded. This means that an user can have several sessions.

  • Why does Crash Reporting and Pulse have the same tracking code?

    The Raygun4js provider includes support for both Crash Reporting and Pulse. The easiest way to start sending data for both Crash Reporting and Pulse is to add the following code snippet before the closing </head> tag in your markup.

    <script type="text/javascript">
      !function(a,b,c,d,e,f,g,h){a.RaygunObject=e,a[e]=a[e]||function(){
      (a[e].o=a[e].o||[]).push(arguments)},f=b.createElement(c),g=b.getElementsByTagName(c)[0],
      f.async=1,f.src=d,g.parentNode.insertBefore(f,g),h=a.onerror,a.onerror=function(b,c,d,f,g){
      h&&h(b,c,d,f,g),g||(g=new Error(b)),a[e].q=a[e].q||[],a[e].q.push({
      e:g})}}(window,document,"script","//cdn.raygun.io/raygun4js/raygun.min.js","rg4js");
    </script>

    Once you add the above code snippet, you can enable Crash Reporting, Pulse or both. All you need to do is to add the following code snippet before the closing </body> tag:

    <script type="text/javascript">
      rg4js('apiKey', 'paste_your_api_key_here');
      rg4js('enableCrashReporting', true);
      rg4js('enablePulse', true);
    </script>

    Configure the 'enableCrashReporting' and 'enablePulse' value to either true or false depending on your requirements.

    Learn more about setting up Crash Reporting and Pulse using the Raygun4js provider.

Can't find what you're looking for?

We'd love to help you out, if you have some questions that aren't featured above, send us a message and we'll do our best to respond as quickly as possible.