Managed IT Services
Calculate your monthly IT support costs instantly
Configure Your IT Needs
Servers ($131/month each)
Firewalls ($27/month each)
Wireless Access Points ($6/month each)
Network Switches ($11/month each)
Mobile Devices ($6/month each)
*This pricing calculator provides an estimate based on the user selections. An MC Services representative will provide an accurate quote after confirming all services and coverages needed.
Your Monthly Investment
Base Service (10 users)
$750
Equipment Management
$535
Total Monthly Cost*
$1,050
Included Services
Potential Annual Savings: $12,600
vs. hiring full-time IT staff
Get Custom Quote
What’s Included in Every Plan
Proactive Monitoring
24/7 system monitoring to prevent issues before they impact your business
On-Site Visits
Regular on-site support visits to maintain your systems and assist your team
Employee Onboarding & Offboarding
Seamless setup and removal of user accounts and access permissions
Mobile Device Management
Secure management and monitoring of smartphones, tablets, and mobile devices
Quarterly Reviews & Dedicated Account Rep
Regular business reviews and a dedicated representative for your account
// Pricing structure
const pricing = {
basic: 79, // per user per month
standard: 105, // per user per month
premium: 158 // per user per month
};
const addOns = {
backup: 15,
security: 12,
monitoring: 8,
compliance: 20
};
// Equipment pricing by service level
const equipmentPricing = {
basic: {
servers: 131,
firewalls: 27,
accessPoints: 6,
switches: 11,
mobileDevices: 6
},
standard: {
servers: 168,
firewalls: 27,
accessPoints: 6,
switches: 11,
mobileDevices: 6
},
premium: {
servers: 210,
firewalls: 53,
accessPoints: 8,
switches: 16,
mobileDevices: 6
}
};
// Service level definitions
const serviceDefinitions = {
basic: [
'Remote Monitoring & Alerts 24/7/365',
'Preventative Maintenance Support',
'Mobile Device Management (MDM)',
'Asset Management',
'Desktop & Server Monitoring',
'Move/Add/Change Computers',
'Application Support',
'Quarterly Account Reviews',
'Dedicated Account Rep',
'Unlimited Same-Day Remote Remediation',
'Priority Support Provided',
'1 On-Site Visits per Month'
],
standard: [
'Remote Monitoring & Alerts 24/7/365',
'Preventative Maintenance Support',
'Mobile Device Management (MDM)',
'Asset Management',
'Desktop & Server Monitoring',
'Move/Add/Change Computers',
'Application Support',
'Quarterly Account Reviews',
'Dedicated Account Rep',
'Unlimited Same-Day Remote Remediation',
'Priority Support Provided',
'2 On-Site Visits per Month',
'Secure Login',
'Security Training',
'Security Planning',
'Malware Detection & Removal',
'Unlimited Remote Backup of Computers'
],
premium: [
'Remote Monitoring & Alerts 24/7/365',
'Preventative Maintenance Support',
'Mobile Device Management (MDM)',
'Asset Management',
'Desktop & Server Monitoring',
'Move/Add/Change Computers',
'Application Support',
'Quarterly Account Reviews',
'Dedicated Account Rep',
'Unlimited Same-Day Remote Remediation',
'Priority Support Provided',
'Unlimited On-Site Visits per Month',
'Secure Login',
'Security Training',
'Security Planning',
'Malware Detection & Removal',
'Unlimited Remote Backup of Computers',
'Emergency 24/7 Support',
'Security Policies',
'Unlimited Remote Backup for Servers',
'Extra Projects'
]
};
const addOnServices = {
backup: 'Cloud Backup & Recovery',
security: 'Advanced Security Suite',
monitoring: '24/7 Network Monitoring',
compliance: 'Compliance Management'
};
function adjustUsers(change) {
const usersInput = document.getElementById('users');
let currentUsers = parseInt(usersInput.value);
currentUsers = Math.max(1, Math.min(500, currentUsers + change));
usersInput.value = currentUsers;
calculatePrice();
}
function adjustEquipment(equipmentType, change) {
const equipmentInput = document.getElementById(equipmentType);
let currentCount = parseInt(equipmentInput.value);
const maxValues = {
servers: 50,
firewalls: 20,
accessPoints: 100,
switches: 50,
mobileDevices: 200
};
currentCount = Math.max(0, Math.min(maxValues[equipmentType], currentCount + change));
equipmentInput.value = currentCount;
calculatePrice();
}
function updateEquipmentPricing() {
const serviceLevel = document.getElementById('serviceLevel').value;
const currentPricing = equipmentPricing[serviceLevel];
// Update the displayed pricing for each equipment type
document.querySelector('[data-equipment="servers"]').textContent = `Servers ($${currentPricing.servers}/month each)`;
document.querySelector('[data-equipment="firewalls"]').textContent = `Firewalls ($${currentPricing.firewalls}/month each)`;
document.querySelector('[data-equipment="accessPoints"]').textContent = `Wireless Access Points ($${currentPricing.accessPoints}/month each)`;
document.querySelector('[data-equipment="switches"]').textContent = `Network Switches ($${currentPricing.switches}/month each)`;
document.querySelector('[data-equipment="mobileDevices"]').textContent = `Mobile Devices ($${currentPricing.mobileDevices}/month each)`;
}
function calculatePrice() {
const users = parseInt(document.getElementById('users').value) || 0;
const serviceLevel = document.getElementById('serviceLevel').value;
// Update equipment pricing display
updateEquipmentPricing();
// Base price calculation
const basePrice = users * pricing[serviceLevel];
// Additional services (removed)
let additionalCost = 0;
let additionalServicesHtml = '';
// Equipment management costs
const servers = parseInt(document.getElementById('servers').value) || 0;
const firewalls = parseInt(document.getElementById('firewalls').value) || 0;
const accessPoints = parseInt(document.getElementById('accessPoints').value) || 0;
const switches = parseInt(document.getElementById('switches').value) || 0;
const mobileDevices = parseInt(document.getElementById('mobileDevices').value) || 0;
const currentPricing = equipmentPricing[serviceLevel];
const equipmentCost = (servers * currentPricing.servers) +
(firewalls * currentPricing.firewalls) +
(accessPoints * currentPricing.accessPoints) +
(switches * currentPricing.switches) +
(mobileDevices * currentPricing.mobileDevices);
// Total calculation
const total = basePrice + additionalCost + equipmentCost;
// Update display
document.getElementById('displayUsers').textContent = users;
document.getElementById('basePrice').textContent = '$' + basePrice.toLocaleString();
document.getElementById('equipmentPrice').textContent = '$' + equipmentCost.toLocaleString();
document.getElementById('totalPrice').textContent = '$' + total.toLocaleString();
document.getElementById('additionalServices').innerHTML = additionalServicesHtml;
// Update included services
updateIncludedServices();
// Calculate potential savings (vs hiring 1 full-time IT person at $70k/year)
const annualCost = total * 12;
const potentialSavings = Math.max(0, 70000 - annualCost);
document.getElementById('savings').textContent = '$' + potentialSavings.toLocaleString();
}
function updateIncludedServices() {
const serviceLevel = document.getElementById('serviceLevel').value;
const includedServicesContainer = document.getElementById('includedServices');
// Get base services for the selected level
let allServices = [...serviceDefinitions[serviceLevel]];
// Add-on services removed
// Generate HTML for services list
let servicesHtml = '';
allServices.forEach(service => {
servicesHtml += `
${service}
`;
});
includedServicesContainer.innerHTML = servicesHtml;
}
function requestQuote() {
const users = document.getElementById('users').value;
const servers = document.getElementById('servers').value;
const firewalls = document.getElementById('firewalls').value;
const accessPoints = document.getElementById('accessPoints').value;
const switches = document.getElementById('switches').value;
const mobileDevices = document.getElementById('mobileDevices').value;
const serviceLevel = document.getElementById('serviceLevel').value;
const total = document.getElementById('totalPrice').textContent;
alert(`Thank you for your interest!
Your Configuration:
• ${users} users
• ${servers} servers
• ${firewalls} firewalls
• ${accessPoints} wireless access points
• ${switches} network switches
• ${mobileDevices} mobile devices
• ${serviceLevel.charAt(0).toUpperCase() + serviceLevel.slice(1)} service level
• Estimated monthly cost: ${total}
A sales representative will contact you within 24 hours to discuss your custom quote and answer any questions.
This is a demo calculator - in a real implementation, this would connect to a CRM system.`);
}
// Initialize calculator
calculatePrice();
