How to Install the Pingstreams Live Chat Widget on a Wix Website
Learn how to seamlessly integrate the Pingstreams live chat widget into your Wix website. This comprehensive guide will walk you through the entire process, from initial setup to advanced customization options.
Why Add Pingstreams to Your Wix Site?
Section titled “Why Add Pingstreams to Your Wix Site?”Integrating Pingstreams with your Wix website offers powerful benefits:
- 24/7 AI Customer Support - Automated responses to visitor inquiries
- Lead Generation - Capture and qualify potential customers
- Increased Conversions - Real-time assistance during the buying process
- Global Reach - Multi-language support for international visitors
- Professional Image - Enhance credibility with instant support availability
- Analytics Insights - Track visitor behavior and support effectiveness
Prerequisites
Section titled “Prerequisites”Before starting the installation:
- Wix Premium Plan - Custom code features require a paid Wix plan
- Wix Editor Access - Administrative rights to your Wix site
- Active Pingstreams Account - Sign up at Pingstreams if you haven’t already
- Project ID - Available from your Pingstreams dashboard
Step-by-Step Installation Guide
Section titled “Step-by-Step Installation Guide”Step 1: Access Your Wix Site Settings
Section titled “Step 1: Access Your Wix Site Settings”- Log in to your Wix account and access your website’s dashboard
- Open your site in the Wix Editor
- In the dashboard, navigate to “Settings”
- You can usually find this option in the top menu or sidebar
- This will open your site’s configuration panel
Step 2: Navigate to Custom Code Section
Section titled “Step 2: Navigate to Custom Code Section”- Within the “Settings” section, select “Advanced”
- Under “Advanced,” click on the “Custom Code” tab
- This is where you can add custom code snippets to your Wix website
- Custom code allows for advanced functionality beyond Wix’s built-in features
Step 3: Add New Custom Code
Section titled “Step 3: Add New Custom Code”To add the Pingstreams live chat widget code:
- Click on the ”+ Add Custom Code” button located at the top right corner of the “Custom Code” tab
- This will open a new dialog box for code configuration
Step 4: Configure the Pingstreams Widget Code
Section titled “Step 4: Configure the Pingstreams Widget Code”In the code configuration dialog, you’ll need to set up several parameters:
Code Input:
Section titled “Code Input:”In the text box provided, paste the following Pingstreams widget code:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here"
};
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
</script>Important: Replace
"your-project-id-here"with your actual Pingstreams Project ID from your dashboard.
Step 5: Name Your Code
Section titled “Step 5: Name Your Code”Give your code snippet a recognizable name such as:
- “Pingstreams Chat Widget”
- “Live Chat Support”
- “Customer Support Widget”
This name will make it easier to identify and manage later.
Step 6: Configure Page Application Settings
Section titled “Step 6: Configure Page Application Settings”Choose where you want the code to be applied:
Option A: All Pages (Recommended)
Section titled “Option A: All Pages (Recommended)”- Select “All pages”
- This adds the Pingstreams widget to all of your site’s pages, including future pages
- Provides consistent support availability across your entire site
Option B: Specific Pages
Section titled “Option B: Specific Pages”- Choose “Choose specific pages”
- Use the drop-down menu to select specific pages where you want to display the widget
- Useful for targeting specific sections like product pages, contact pages, or pricing pages
Step 7: Choose Code Placement Location
Section titled “Step 7: Choose Code Placement Location”Select where to place the code within your page’s HTML structure under “Place Code in:“
Recommended Options:
Section titled “Recommended Options:”“Body - end” (Most Recommended)
- Loads the widget after the main page content
- Doesn’t block page rendering
- Ensures fast page load times
“Head”
- Loads early in the page lifecycle
- Good for essential functionality
- May slow initial page rendering
“Body - start”
- Loads immediately when body starts
- Can interfere with above-the-fold content
- Generally not recommended for chat widgets
Step 8: Apply Your Changes
Section titled “Step 8: Apply Your Changes”Finally, click the “Apply” button to save your changes and activate the Pingstreams live chat widget on your Wix website.
Advanced Configuration Options
Section titled “Advanced Configuration Options”Custom Widget Settings
Section titled “Custom Widget Settings”Enhance your widget with advanced configuration:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// Appearance customization
widgetColor: "#007cba",
widgetPosition: "bottom-right",
widgetSize: "medium",
// Behavior settings
autoOpen: false,
welcomeMessage: "Hello! How can we help you today?",
offlineMessage: "We're currently offline. Leave us a message!",
// Wix-specific settings
platform: "wix",
siteType: "business", // or "personal", "ecommerce", etc.
// User context (if available)
userEmail: "", // Can be populated dynamically
userName: "", // Can be populated dynamically
// Custom fields for lead capture
customFields: {
company: "",
phone: "",
website: ""
}
};
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
</script>Mobile Optimization
Section titled “Mobile Optimization”Add mobile-specific styling for better user experience:
<style>
/* Mobile-specific chat widget adjustments */
@media (max-width: 768px) {
.pingstreams-widget {
bottom: 15px !important;
right: 15px !important;
z-index: 999999 !important;
}
.pingstreams-chat-window {
width: 90vw !important;
height: 70vh !important;
max-width: 350px !important;
border-radius: 10px !important;
}
.pingstreams-widget-button {
width: 60px !important;
height: 60px !important;
}
}
/* Desktop optimizations */
@media (min-width: 769px) {
.pingstreams-chat-window {
width: 350px !important;
height: 500px !important;
box-shadow: 0 5px 25px rgba(0, 0, 0, 0.2) !important;
}
}
</style>
<script type="application/javascript">
// Your Pingstreams widget code here
</script>Wix-Specific Integration Features
Section titled “Wix-Specific Integration Features”E-commerce Integration (Wix Stores)
Section titled “E-commerce Integration (Wix Stores)”For Wix online stores, enhance the chat with product context:
<script type="application/javascript">
// Check if we're on a product page
if (window.location.pathname.includes('/product-page/')) {
window.pingstreamsSettings = {
projectid: "your-project-id-here",
ecommerce: true,
productContext: {
// This data can be dynamically populated
productName: document.querySelector('.product-title')?.textContent || '',
productPrice: document.querySelector('.price')?.textContent || '',
productCategory: 'general',
inStock: true
}
};
} else {
window.pingstreamsSettings = {
projectid: "your-project-id-here"
};
}
// Standard widget loading code
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
</script>Booking Integration (Wix Bookings)
Section titled “Booking Integration (Wix Bookings)”For service-based businesses using Wix Bookings:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
bookingSystem: true,
services: {
availableServices: ["consultation", "appointment", "service-booking"],
businessHours: {
monday: "9:00-17:00",
tuesday: "9:00-17:00",
wednesday: "9:00-17:00",
thursday: "9:00-17:00",
friday: "9:00-17:00",
saturday: "10:00-14:00",
sunday: "closed"
}
},
customResponses: {
bookingInquiry: "I'd be happy to help you schedule an appointment! What service are you interested in?",
availabilityCheck: "Let me check our availability for you. What date works best?"
}
};
// Widget loading code here
</script>Multi-language Support
Section titled “Multi-language Support”For international Wix sites:
<script type="application/javascript">
// Detect page language (adjust selector as needed)
const pageLanguage = document.documentElement.lang || 'en';
const languageSettings = {
'en': {
welcomeMessage: "Hello! How can we help you today?",
offlineMessage: "We're currently offline. Please leave a message!"
},
'es': {
welcomeMessage: "¡Hola! ¿Cómo podemos ayudarte hoy?",
offlineMessage: "Actualmente estamos desconectados. ¡Por favor deja un mensaje!"
},
'fr': {
welcomeMessage: "Bonjour! Comment pouvons-nous vous aider aujourd'hui?",
offlineMessage: "Nous sommes actuellement hors ligne. Veuillez laisser un message!"
},
'de': {
welcomeMessage: "Hallo! Wie können wir Ihnen heute helfen?",
offlineMessage: "Wir sind derzeit offline. Bitte hinterlassen Sie eine Nachricht!"
}
};
window.pingstreamsSettings = {
projectid: "your-project-id-here",
language: pageLanguage,
welcomeMessage: languageSettings[pageLanguage]?.welcomeMessage || languageSettings['en'].welcomeMessage,
offlineMessage: languageSettings[pageLanguage]?.offlineMessage || languageSettings['en'].offlineMessage
};
// Widget loading code
</script>Conditional Loading Scenarios
Section titled “Conditional Loading Scenarios”Load Only on Specific Page Types
Section titled “Load Only on Specific Page Types”<script type="application/javascript">
// Define pages where chat should appear
const chatPages = [
'/contact',
'/pricing',
'/product-page',
'/services',
'/support'
];
// Check if current page should show chat
const currentPath = window.location.pathname;
const shouldShowChat = chatPages.some(page => currentPath.includes(page)) ||
currentPath === '/' || // Homepage
currentPath.includes('/blog/'); // Blog posts
if (shouldShowChat) {
window.pingstreamsSettings = {
projectid: "your-project-id-here"
};
// Load widget code only if conditions are met
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
}
</script>Time-Based Display
Section titled “Time-Based Display”Show chat only during business hours:
<script type="application/javascript">
function isBusinessHours() {
const now = new Date();
const day = now.getDay(); // 0 = Sunday, 1 = Monday, etc.
const hour = now.getHours();
// Business hours: Monday-Friday 9AM-6PM, Saturday 10AM-2PM
if (day >= 1 && day <= 5) { // Monday to Friday
return hour >= 9 && hour < 18;
} else if (day === 6) { // Saturday
return hour >= 10 && hour < 14;
}
return false; // Sunday closed
}
if (isBusinessHours()) {
window.pingstreamsSettings = {
projectid: "your-project-id-here",
businessHours: true,
status: "online"
};
} else {
window.pingstreamsSettings = {
projectid: "your-project-id-here",
businessHours: false,
status: "offline",
offlineMessage: "We're currently closed. Business hours: Mon-Fri 9AM-6PM, Sat 10AM-2PM"
};
}
// Load widget code
</script>Analytics and Tracking Integration
Section titled “Analytics and Tracking Integration”Google Analytics 4 Integration
Section titled “Google Analytics 4 Integration”Track chat interactions with GA4:
<script type="application/javascript">
// Enhanced Pingstreams settings with analytics
window.pingstreamsSettings = {
projectid: "your-project-id-here",
analytics: true,
// Event callbacks for tracking
onChatStart: function() {
// Track chat initiation
if (typeof gtag !== 'undefined') {
gtag('event', 'chat_started', {
'event_category': 'engagement',
'event_label': 'pingstreams_widget',
'custom_parameter': window.location.pathname
});
}
},
onMessageSent: function(message) {
// Track message sending
if (typeof gtag !== 'undefined') {
gtag('event', 'chat_message_sent', {
'event_category': 'engagement',
'event_label': 'user_message',
'custom_parameter': message.length
});
}
},
onChatEnd: function(duration) {
// Track chat completion
if (typeof gtag !== 'undefined') {
gtag('event', 'chat_ended', {
'event_category': 'engagement',
'event_label': 'chat_duration',
'custom_parameter': duration
});
}
}
};
// Standard widget loading code
</script>Wix Analytics Integration
Section titled “Wix Analytics Integration”<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
onChatStart: function() {
// Track with Wix analytics if available
if (window.wixDeveloperAnalytics) {
window.wixDeveloperAnalytics.track('Chat Started', {
page: window.location.pathname,
timestamp: new Date().toISOString()
});
}
}
};
// Widget loading code
</script>Troubleshooting Common Issues
Section titled “Troubleshooting Common Issues”Widget Not Appearing
Section titled “Widget Not Appearing”Possible Causes:
- Wix Plan Limitations - Free plans don’t support custom code
- Incorrect Project ID - Double-check your Pingstreams dashboard
- JavaScript Errors - Check browser console for conflicts
- Ad Blockers - Some blockers prevent chat widgets
Solutions:
- Upgrade to Wix Premium plan with custom code support
- Verify Project ID in your Pingstreams dashboard
- Check browser console for JavaScript errors
- Test with ad blockers disabled
Mobile Display Issues
Section titled “Mobile Display Issues”Common Problems:
- Widget overlapping with Wix mobile menu
- Chat window too large on small screens
- Touch interaction problems
CSS Solutions:
/* Mobile-specific fixes */
@media (max-width: 480px) {
.pingstreams-widget {
bottom: 80px !important; /* Avoid mobile menu overlap */
right: 10px !important;
z-index: 99999 !important;
}
.pingstreams-chat-window {
width: calc(100vw - 20px) !important;
height: 60vh !important;
left: 10px !important;
right: 10px !important;
margin: 0 !important;
}
}Performance Optimization
Section titled “Performance Optimization”Lazy Loading Implementation:
<script type="application/javascript">
// Load widget after user interaction or delay
function loadPingstreamsWidget() {
window.pingstreamsSettings = {
projectid: "your-project-id-here"
};
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
}
// Load after user scrolls or after 3 seconds
let widgetLoaded = false;
function initWidget() {
if (!widgetLoaded) {
loadPingstreamsWidget();
widgetLoaded = true;
}
}
window.addEventListener('scroll', initWidget, { once: true });
setTimeout(initWidget, 3000);
</script>Testing and Validation
Section titled “Testing and Validation”Pre-Launch Checklist
Section titled “Pre-Launch Checklist”- ✅ Widget appears on intended pages
- ✅ Chat window opens properly
- ✅ Mobile responsive design works
- ✅ No JavaScript console errors
- ✅ Fast page loading maintained
- ✅ Analytics tracking functional (if implemented)
- ✅ Multi-browser compatibility verified
- ✅ Touch interactions work on mobile devices
Cross-Browser Testing
Section titled “Cross-Browser Testing”Test your widget on:
- Chrome (desktop and mobile)
- Safari (desktop and mobile)
- Firefox (desktop and mobile)
- Edge (desktop)
- Samsung Internet (mobile)
Performance Monitoring
Section titled “Performance Monitoring”Monitor these metrics after installation:
- Page Load Speed - Should remain unchanged
- Time to Interactive - Widget shouldn’t block interaction
- First Contentful Paint - Main content should load first
- Cumulative Layout Shift - Widget shouldn’t cause layout jumps
Success! Your Wix Website Now Has Pingstreams! 🎉
Section titled “Success! Your Wix Website Now Has Pingstreams! 🎉”That’s it! Your Wix website is now equipped with the Pingstreams live chat widget, allowing you to:
- Engage with visitors in real-time
- Provide excellent customer support
- Capture leads automatically
- Answer questions instantly with AI
- Build stronger customer relationships
- Increase conversion rates through better engagement
Next Steps
Section titled “Next Steps”Optimize Your Setup
Section titled “Optimize Your Setup”- Configure AI responses for common inquiries about your business
- Set up automated workflows for lead qualification
- Customize widget appearance to match your Wix site design
- Create department routing for different types of inquiries
- Implement user authentication for personalized experiences
Advanced Features to Explore
Section titled “Advanced Features to Explore”- CRM integration for seamless lead management
- Email marketing automation based on chat interactions
- Advanced analytics and reporting dashboards
- Multi-agent support for team collaboration
- Custom chatbot flows for specific business processes
Wix-Specific Enhancements
Section titled “Wix-Specific Enhancements”- Wix Stores integration for e-commerce support
- Wix Bookings connection for appointment scheduling
- Wix Events integration for event-related inquiries
- Member area support for logged-in users
- Blog integration for content-related discussions
Community and Support
Section titled “Community and Support”- 📚 Comprehensive documentation for advanced features
- 🎥 Video tutorials specifically for Wix users
- 💬 Community forum for questions and best practices
- 🔧 Technical support for custom implementation needs
- 🎨 Design resources for widget customization
Ready to transform your Wix site’s visitor experience? Your Pingstreams chat widget is now live and ready to help you connect with customers, generate leads, and provide exceptional support!
For additional customization help or technical support, our team is available to ensure your Pingstreams + Wix integration delivers maximum value for your business.