Skip to main content

How to Route Feedback to Two Separate Marker.io Projects

More than one Marker.io account? Read this!

Updated this week

If you need to collect feedback from two separate groups—such as your internal team and external stakeholders—this guide explains how to use a single script to automatically route their reports to two different Marker.io projects.

Why Use Separate Projects?

  • Stay Organized: Keep feedback from your internal team and external stakeholders completely separate.

  • Route Automatically: Ensure bug reports and suggestions are sent to the correct project without any manual work.

  • Avoid Confusion: Provide a clear and simple feedback process for everyone involved.

Setup Instructions

1. Add the Script to Your Website

Copy the script below and paste it into the <head> section of your website's HTML.

2. Update Your Project IDs

In the script, replace the placeholder IDs (YOUR_PROJECT_ID_FOR_EXTERNAL and YOUR_PROJECT_ID_FOR_INTERNAL) with the actual project IDs from your Marker.io accounts.

<script>
function getMarkerProjectId() {
const urlParams = new URLSearchParams(window.location.search);
let projectId = null;

// Check URL for 'external' parameter
if (urlParams.has('external')) {
// Replace with the project ID for your external stakeholders
projectId = 'YOUR_PROJECT_ID_FOR_EXTERNAL';
}
// Check URL for 'internal' parameter
else if (urlParams.has('internal')) {
// Replace with the project ID for your internal team
projectId = 'YOUR_PROJECT_ID_FOR_INTERNAL';
}

// If a parameter was found, save the ID for the session
if (projectId) {
localStorage.setItem('markerProjectId', projectId);
} else {
// If no parameter is in the URL, use the ID we saved earlier
projectId = localStorage.getItem('markerProjectId');
}

return projectId;
}

// Get the correct project ID
const projectId = getMarkerProjectId();

// Only load Marker.io if a project ID has been set
if (projectId) {
window.markerConfig = {
project: projectId,
source: 'snippet'
};

// This line loads the Marker.io widget
const script = document.createElement('script');
script.async = true;
script.src = "https://edge.marker.io/latest/shim.js";
document.head.appendChild(script);
}
</script>

How It Works

To activate the correct feedback widget, you will share slightly different URLs with each group.

  • The script checks the URL for a parameter (?external or ?internal).

  • It loads the corresponding Marker.io project widget.

  • It then remembers which project to use as the user navigates across different pages of your site.

  • If a user visits your site without either parameter in the URL for the first time, the Marker.io widget will not load.

URL Examples:

  • For External Stakeholders: https://yourwebsite.com/?external

  • For Your Internal Team: https://yourwebsite.com/?internal

Customize the Widget for Clarity

To prevent confusion, you should customize the feedback widget for each project so it's obvious which one is active.

You can change the widget's appearance under Project Settings → Widget → Appearance in your Marker.io dashboard.

Here are our recommended settings:

User Group

Suggested Label

Suggested Color

External Stakeholders

"Share Feedback"

Red

Internal Team

"Internal Reporting"

Blue

Did this answer your question?