Overview
Heap is a product analytics platform that provides automated data capture for user interactions across web and mobile applications. Established in 2012, Heap's core proposition is to eliminate the need for manual event tagging, allowing for retroactive analysis of user behavior without prior instrumentation. This automatic data collection aims to provide a complete dataset of user actions, including clicks, page views, form submissions, and other interactions, from the moment the SDK is implemented heap.io. This capability enables product managers, data analysts, and marketers to explore user behavior without having to anticipate every question or define every event beforehand.
The platform is designed for organizations seeking to understand user journeys, identify points of friction, and optimize conversion funnels. By capturing all interactions, Heap facilitates the analysis of historical data, allowing teams to define new events and segments retroactively. This can be particularly useful for A/B test analysis and understanding the impact of new features without requiring new deployments or manual tagging updates for each change. Heap's approach aligns with the principle of comprehensive data collection to support iterative product development and experimentation cxl.com.
Heap offers SDKs for various environments, including JavaScript, iOS, Android, React Native, Flutter, and server-side languages like Node.js, Python, and Java developers.heap.io. This broad language support allows for consistent data capture across different parts of a product ecosystem. The platform also provides APIs for data export and ingestion, supporting integrations with other business intelligence tools and data warehouses. Heap is often utilized by teams focused on improving user engagement, optimizing conversion rates, and making data-informed product decisions. Its compliance certifications, including SOC 2 Type II, GDPR, CCPA, ISO 27001, and HIPAA, address data privacy and security requirements for various industries.
Key features
- Automated Data Capture: Automatically records all user interactions (clicks, gestures, page views, form submissions) without requiring manual event tagging or code changes heap.io.
- Retroactive Analysis: Allows users to define events and analyze historical data from the initial SDK installation, even for events not initially configured.
- User Journey Mapping: Visualizes complete user paths and flows, identifying common sequences and drop-off points within the product.
- Session Replay: Reconstructs individual user sessions, showing how users interact with the product in real-time to provide contextual insights into behavior.
- Friction Analysis: Tools to identify where users encounter difficulties or abandon processes, aiding in UX improvements.
- Segmentation and Cohort Analysis: Enables grouping users based on behavior, attributes, or acquisition source to analyze specific user sets over time.
- Marketing Attribution: Connects user behavior data with marketing campaign performance to understand channel effectiveness and ROI.
- A/B Testing Analysis: Provides tools to analyze the impact of different variations in A/B tests on user behavior and key metrics.
- API for Data Export/Ingestion: Offers programmatic access to export collected data or ingest additional data points from other systems developers.heap.io/reference/api-overview.
Pricing
Heap offers a free tier for initial usage, with paid tiers structured to accommodate growing data volumes and feature requirements. The free tier supports up to 10,000 monthly sessions. Beyond this, pricing for Growth, Premium, and Enterprise tiers is custom and requires direct contact with Heap's sales team. Details on specific feature sets per paid tier are generally provided during a consultation.
| Tier | Monthly Sessions Limit | Key Features | Pricing |
|---|---|---|---|
| Free | Up to 10,000 | Core behavioral analytics, unlimited users, limited data retention | Free |
| Growth | Custom (starts above free tier) | Enhanced analytics, longer data retention, advanced segments, integrations | Contact for pricing |
| Premium | Custom | All Growth features plus advanced governance, dedicated support, more integrations | Contact for pricing |
| Enterprise | Custom | All Premium features plus custom compliance, single sign-on (SSO), advanced security | Contact for pricing |
Common integrations
- Salesforce: Sync Heap data with CRM for unified customer views developers.heap.io/docs/integrations/salesforce.
- Segment: Centralize data collection and distribution to other tools developers.heap.io/docs/integrations/segment.
- Google Analytics: Complement traditional analytics with detailed behavioral data heap.io/integrations/google-analytics.
- Slack: Receive alerts and insights directly in communication channels heap.io/integrations/slack.
- Amplitude: For organizations using both platforms, data can be integrated to enrich analysis amplitude.com.
- Mixpanel: Data sharing for comparative analysis or specific use cases mixpanel.com.
- Snowflake: Export raw Heap data for advanced warehousing and custom querying developers.heap.io/docs/integrations/snowflake.
- Redshift: Data warehousing integration for complex data modeling and analysis developers.heap.io/docs/integrations/redshift.
- Marketo: Sync user behavior data with marketing automation campaigns heap.io/integrations/marketo.
Alternatives
- Mixpanel: A product analytics platform focused on event tracking and user behavior analysis, often requiring manual event instrumentation.
- Amplitude: Offers comprehensive product analytics for understanding customer journeys and engagement, with a strong emphasis on behavioral segmentation.
- PostHog: An open-source product analytics suite providing event capture, session replay, and feature flags, with self-hosting options.
- Hotjar: Specializes in heatmaps, session recordings, and surveys to understand user experience and gather feedback.
- FullStory: A digital experience intelligence platform offering session replay, heatmaps, and analytics to identify user struggles and improve product design.
Getting started
To integrate Heap into a web application, the JavaScript SDK is typically installed by adding a snippet to the <head> of your HTML. This snippet initializes Heap and begins automatic data capture. The following example demonstrates a basic implementation:
<!DOCTYPE html>
<html>
<head>
<title>My Web Application</title>
<!-- Heap Analytics Snippet -->
<script type="text/javascript">
window.heap=window.heap||[],heap.load=function(e,t){window.heap.args=window.heap.args||[];window.heap.args.push([e,t]);for(var a=function(e){return function(){heap.push([e].concat(Array.prototype.slice.call(arguments)))}},p=["addEventProperties","addUserProperties","clearEventProperties","identify","resetIdentity","removeEventProperty","setEventProperties","track","unsetEventProperty"],o=0;o<p.length;o++)heap[p[o]]=a(p[o]);var r=document.createElement("script");r.type="text/javascript";r.async=!0;r.src="https://cdn.heapanalytics.com/js/heap-"+e+".js";var h=document.getElementsByTagName("script")[0];h.parentNode.insertBefore(r,h);for(var c="copy console error find getElementsByClassName getElementsByTagName getElementById getElementByTagName getElementsByClassName querySelector querySelectorAll".split(" "),l=0;l<c.length;l++){var d=c[l];heap[d]=function(){return function(){var e=Array.prototype.slice.call(arguments);return console.log("Heap: "+d+"("+e.join(", ")+")"),this}}()}},heap.load("YOUR_HEAP_APP_ID");
</script>
<!-- End Heap Analytics Snippet -->
</head>
<body>
<h1>Welcome to the App</h1>
<button id="myButton">Click Me</button>
<script>
document.getElementById('myButton').addEventListener('click', function() {
console.log('Button clicked!');
// You can optionally track custom events, though Heap autocaptures many interactions
heap.track('Button Clicked', { buttonId: 'myButton', page: window.location.pathname });
});
// Identify a user after login or when user information is available
heap.identify('user-123');
heap.addUserProperties({ email: '[email protected]', plan: 'premium' });
</script>
</body>
</html>
Replace "YOUR_HEAP_APP_ID" with your actual Heap Project ID, which can be found in your Heap account settings developers.heap.io/docs/web. Once installed, Heap will begin capturing interactions. The heap.track() function is used for custom events not covered by auto-capture, or to add specific properties to an autocaptured event. The heap.identify() and heap.addUserProperties() methods are used to associate interactions with specific users and enrich user profiles, respectively.