Calculator Tools Calculator Tools
Create

Samas Digital | Credit-Based Pricing Simulator

Aug 12, 2026

About this app

Explore, purchase, and allocate credits for digital services with Samas Digital's intuitive pricing simulator.

Samas Digital | Credit-Based Pricing Simulator Welcome to Samas Digital Pricing Simulator Purchase Credits: Select credits ${creditOptions.map(option => `${option} credits`).join('')} Cost: `₹0` Live Summary Panel Total Credits Purchased: 0 Credits Used: 0 Credits Remaining: 0 Not enough credits! Selected Services: Proceed to Consultation

Related apps

Put this on your site

Source

                    <html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">

<title>Samas Digital | Credit-Based Pricing Simulator</title>
<meta name="description" content="Explore, purchase, and allocate credits for digital services with Samas Digital's intuitive pricing simulator.">
<meta name="keywords" content="Samas Digital, pricing simulator, digital services, credit system, interactive pricing">

<!-- Libraries -->
<!-- jQuery (3.6.0) -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js" crossorigin="anonymous"></script>
<!-- Bootstrap CSS (5.3.3) -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" crossorigin="anonymous">
<!-- Bootstrap JS (5.3.3) -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.min.js" crossorigin="anonymous"></script>
<!-- Font Awesome (6.6.0) -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.6.0/css/fontawesome.min.css" crossorigin="anonymous">

<script type="text/javascript">
try {
document.addEventListener("DOMContentLoaded", function() {
let creditsPurchased = 0;
const creditValue = 5000;

const services = {
'UGC Ad Sprints': { outcome: 'Launch high-converting, scroll-stopping ads', options: {'2 ads': 3.5, '4 ads': 7, '8 ads': 14, '12 ads': 25} },
'Product Video Ads': { outcome: 'Turn your product into a compelling story', options: {'2 ads': 8, '4 ads': 16, '8 ads': 30 }},
'AI Product Visual Lab': { outcome: 'Generate high-quality visuals at scale', options: {'1 visual': 0.5, '10 visuals': 5, '25 visuals': 9, '50 visuals': 17 }},
'Creator Repurposing Engine': { outcome: 'Turn one recording into multiple engaging social media assets', options: {'1 recording': 2, '2 recordings': 3.5, '4 recordings': 7, 'Scalable package': 13 }},
'YouTube Packaging System': { outcome: 'Increase click-through rates', options: {'1 video': 1, '5 videos': 4.5, '10 videos': 9 }},
'Founder Deck System': { outcome: 'Communicate your vision clearly', options: {'10 slides': 4, '15 slides': 6, '20 slides': 8 }},
};

const creditOptions = [10, 25, 50, 100, 200];

function renderServices() {
const servicesContainer = $('#services-container');
$.each(services, (serviceName, service) => {
const serviceCard = `
<div class="card mb-3">
<div class="card-body">
<h5 class="card-title">${serviceName}<span class="badge bg-secondary">Most Popular</span></h5>
<p class="card-text"><strong>${service.outcome}</strong></p>
<ul class="list-group list-group-flush">
${Object.entries(service.options).map(option =>
`<li class="list-group-item">
${option[0]} → <input type="checkbox" class="service-option" data-credits="${option[1]}"> ${option[1]} credits
</li>`).join('')}
</ul>
</div>
</div>`;
servicesContainer.append(serviceCard);
});
}

function updateCreditsRemaining() {
const usedCredits = $("input.service-option:checked").toArray().reduce((sum, item) => sum + parseFloat($(item).data("credits")), 0);
$("#credits-used").text(usedCredits);
$("#credits-remaining").text(creditsPurchased - usedCredits);

if (usedCredits > creditsPurchased) {
$("#credit-warning").show();
} else {
$("#credit-warning").hide();
}
}

$("#credit-purchase").change(function() {
creditsPurchased = parseInt($(this).val());
$("#total-cost").text(`₹${creditsPurchased * creditValue}`);

$(".service-option").prop("checked", false);
updateCreditsRemaining();
});

$("body").on("change", ".service-option", updateCreditsRemaining);

renderServices();
});

} catch (error) {
throw error;
}
</script>

<style>
body {
background: linear-gradient(to right, #f9f7f7, #eef2f3);
font-family: 'Arial', sans-serif;
color: #333;
}
.card {
transition: transform 0.3s;
}
.card:hover {
transform: scale(1.05);
}
#summary-panel {
margin-top: 30px;
background: white;
padding: 15px;
border-radius: 5px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
h2 {
margin-top: 20px;
}
.btn-primary {
background: #007bff;
}
.btn-primary:hover {
background: #0056b3;
}
.warning {
display: none;
color: red;
font-weight: bold;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1 class="text-center my-4">Welcome to Samas Digital Pricing Simulator</h1>
<div>
<label for="credit-purchase">Purchase Credits:</label>
<select id="credit-purchase" class="form-select mb-3">
<option value="0" selected disabled>Select credits</option>
${creditOptions.map(option => `<option value="${option}">${option} credits</option>`).join('')}
</select>
<p id="total-cost">Cost: `₹0`</p>
</div>
<div id="services-container" class="mb-4"></div>
<div id="summary-panel">
<h3>Live Summary Panel</h3>
<p>Total Credits Purchased: <span id="credits-purchased">0</span></p>
<p>Credits Used: <span id="credits-used">0</span></p>
<p>Credits Remaining: <span id="credits-remaining">0</span></p>
<p class="warning" id="credit-warning">Not enough credits!</p>
<h4>Selected Services:</h4>
<ul id="selected-services"></ul>
<button class="btn btn-primary" onclick="alert('Proceeding to Consultation!')">Proceed to Consultation</button>
</div>
</div>
</body>
</html>