{"id":8749,"date":"2026-02-02T15:48:46","date_gmt":"2026-02-02T14:48:46","guid":{"rendered":"https:\/\/bbqboat.fr\/profitability-simulator\/"},"modified":"2026-02-03T10:01:32","modified_gmt":"2026-02-03T09:01:32","slug":"profitability-simulator","status":"publish","type":"page","link":"https:\/\/bbqboat.fr\/en\/profitability-simulator\/","title":{"rendered":"Profitability Simulator"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"8749\" class=\"elementor elementor-8749 elementor-8603\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-69ce82f elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"69ce82f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-26f193c elementor-widget elementor-widget-spacer\" data-id=\"26f193c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-711a4dc elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"711a4dc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<h1 data-interaction-id=\"6973544\" class=\"e-6973544-31b1a57 e-heading-base\" data-e-type=\"widget\" data-id=\"6973544\">PROFITABILITY SIMULATOR<\/h1>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-bf0c878 e-flex e-con-boxed e-con e-parent\" data-id=\"bf0c878\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<h1 data-interaction-id=\"bbd2e81\" class=\"converted-class-1 e-heading-base\" data-e-type=\"widget\" data-id=\"bbd2e81\"><strong>CALCULATE THE PROFITABILITY OF YOUR PROJECT WITH BBQ BOAT<\/strong><\/h1>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fc46a4a elementor-hidden-mobile e-flex e-con-boxed e-con e-parent\" data-id=\"fc46a4a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9650f31 elementor-widget elementor-widget-html\" data-id=\"9650f31\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"bbq-sim\" id=\"bbq-sim\">\n  <div class=\"bbq-header\">\n    <h2>Profitability Calculator<\/h2>\n    <p>Simulate your revenue with BBQ Boat<\/p>\n  <\/div>\n\n  <div class=\"bbq-cards\">\n    <div class=\"bbq-card\">\n      <div class=\"bbq-card-title\">Monthly Revenue<\/div>\n      <div class=\"bbq-card-value\" id=\"bbq-monthlyRevenue\">\u2014<\/div>\n      <div class=\"bbq-card-sub\" id=\"bbq-dailyAvg\">\u2014<\/div>\n    <\/div>\n\n    <div class=\"bbq-card\">\n      <div class=\"bbq-card-title\">Monthly Profit<\/div>\n      <div class=\"bbq-card-value bbq-accent\" id=\"bbq-monthlyProfit\">\u2014<\/div>\n      <div class=\"bbq-card-sub\">After Expenses<\/div>\n    <\/div>\n\n    <div class=\"bbq-card\">\n      <div class=\"bbq-card-title\">Annual Profit<\/div>\n      <div class=\"bbq-card-value bbq-warm\" id=\"bbq-yearlyProfit\">\u2014<\/div>\n      <div class=\"bbq-card-sub\" id=\"bbq-seasonLabel\">Based on 6 months<\/div>\n    <\/div>\n\n    <div class=\"bbq-card bbq-card-cta\">\n      <div class=\"bbq-card-title\">ROI<\/div>\n      <div class=\"bbq-card-value\" id=\"bbq-roi\">\u2014<\/div>\n      <div class=\"bbq-card-sub\">Return on Investment<\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"bbq-grid\">\n    <div class=\"bbq-panel\">\n      <h3>Business Parameters<\/h3>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Rental Price per Hour<\/label>\n          <span class=\"bbq-pill\" id=\"bbq-pricePerHourLabel\">\u20ac80<\/span>\n        <\/div>\n        <input id=\"bbq-pricePerHour\" type=\"range\" min=\"40\" max=\"200\" step=\"5\" value=\"80\">\n        <div class=\"bbq-minmax\"><span>\u20ac40<\/span><span>\u20ac200<\/span><\/div>\n      <\/div>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Trips per Day<\/label>\n          <span class=\"bbq-pill\" id=\"bbq-tripsPerDayLabel\">4<\/span>\n        <\/div>\n        <input id=\"bbq-tripsPerDay\" type=\"range\" min=\"1\" max=\"8\" step=\"1\" value=\"4\">\n        <div class=\"bbq-minmax\"><span>1<\/span><span>8<\/span><\/div>\n      <\/div>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Number of Boats<\/label>\n          <span class=\"bbq-pill\" id=\"bbq-numberOfBoatsLabel\">2<\/span>\n        <\/div>\n        <input id=\"bbq-numberOfBoats\" type=\"range\" min=\"1\" max=\"10\" step=\"1\" value=\"2\">\n        <div class=\"bbq-minmax\"><span>1<\/span><span>10<\/span><\/div>\n      <\/div>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Working Days per Month<\/label>\n          <span class=\"bbq-pill bbq-pill-warm\" id=\"bbq-workingDaysPerMonthLabel\">25<\/span>\n        <\/div>\n        <input id=\"bbq-workingDaysPerMonth\" type=\"range\" min=\"15\" max=\"30\" step=\"1\" value=\"25\">\n        <div class=\"bbq-minmax\"><span>15<\/span><span>30<\/span><\/div>\n      <\/div>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Months in Season per Year<\/label>\n          <span class=\"bbq-pill bbq-pill-warm\" id=\"bbq-seasonMonthsLabel\">6<\/span>\n        <\/div>\n        <input id=\"bbq-seasonMonths\" type=\"range\" min=\"3\" max=\"12\" step=\"1\" value=\"6\">\n        <div class=\"bbq-minmax\"><span>3<\/span><span>12<\/span><\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"bbq-panel\">\n      <h3>Monthly Costs<\/h3>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Maintenance<\/label>\n          <span class=\"bbq-pill bbq-pill-orange\" id=\"bbq-maintenanceLabel\">\u20ac500<\/span>\n        <\/div>\n        <input id=\"bbq-maintenanceCostPerMonth\" type=\"range\" min=\"100\" max=\"2000\" step=\"50\" value=\"500\">\n      <\/div>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Insurance<\/label>\n          <span class=\"bbq-pill bbq-pill-orange\" id=\"bbq-insuranceLabel\">\u20ac300<\/span>\n        <\/div>\n        <input id=\"bbq-insuranceCostPerMonth\" type=\"range\" min=\"100\" max=\"1500\" step=\"50\" value=\"300\">\n      <\/div>\n\n      <div class=\"bbq-field\">\n        <div class=\"bbq-field-top\">\n          <label>Location \/ Mooring<\/label>\n          <span class=\"bbq-pill bbq-pill-orange\" id=\"bbq-locationLabel\">\u20ac800<\/span>\n        <\/div>\n        <input id=\"bbq-locationCostPerMonth\" type=\"range\" min=\"200\" max=\"3000\" step=\"100\" value=\"800\">\n      <\/div>\n\n      <div class=\"bbq-totals\">\n        <div class=\"bbq-row\">\n          <span>Monthly Total<\/span>\n          <strong id=\"bbq-monthlyCosts\">\u2014<\/strong>\n        <\/div>\n        <div class=\"bbq-row\">\n          <span>Annual Total<\/span>\n          <strong id=\"bbq-yearlyCosts\">\u2014<\/strong>\n        <\/div>\n      <\/div>\n\n      <div class=\"bbq-summary\">\n        <h4>Investment Summary<\/h4>\n        <div class=\"bbq-row\"><span>Initial Investment<\/span><strong id=\"bbq-investment\">\u2014<\/strong><\/div>\n        <div class=\"bbq-row\"><span>Average Monthly Revenue<\/span><strong id=\"bbq-monthlyRevenue2\">\u2014<\/strong><\/div>\n        <div class=\"bbq-row\"><span>Net Monthly Profit<\/span><strong class=\"bbq-green\" id=\"bbq-monthlyProfit2\">\u2014<\/strong><\/div>\n        <div class=\"bbq-row\"><span>Estimated Annual Profit<\/span><strong class=\"bbq-green\" id=\"bbq-yearlyProfit2\">\u2014<\/strong><\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"bbq-info\">\n    <h3>About These Estimates<\/h3>\n    <p>\n These calculations are based on observed averages. Actual results may vary depending on:\n location, seasonality, marketing, service quality, etc. \n    <\/p>\n    <ul>\n      <li>Average occupancy rate in high season: 70\u201385%<\/li>\n      <li>Average trip duration: 2\u20133 hours<\/li>\n      <li>Observed average price: \u20ac60\u2013\u20ac100\/hour depending on the region<\/li>\n    <\/ul>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  const root = document.getElementById('bbq-sim');\n  if(!root) return;\n\n  const $ = (id) => document.getElementById(id);\n  const fmt = (n) => Number(n).toLocaleString('fr-FR');\n\n  const inputs = {\n    pricePerHour: $('bbq-pricePerHour'),\n    tripsPerDay: $('bbq-tripsPerDay'),\n    numberOfBoats: $('bbq-numberOfBoats'),\n    workingDaysPerMonth: $('bbq-workingDaysPerMonth'),\n    seasonMonths: $('bbq-seasonMonths'),\n    maintenanceCostPerMonth: $('bbq-maintenanceCostPerMonth'),\n    insuranceCostPerMonth: $('bbq-insuranceCostPerMonth'),\n    locationCostPerMonth: $('bbq-locationCostPerMonth'),\n  };\n\n  const labels = {\n    pricePerHour: $('bbq-pricePerHourLabel'),\n    tripsPerDay: $('bbq-tripsPerDayLabel'),\n    numberOfBoats: $('bbq-numberOfBoatsLabel'),\n    workingDaysPerMonth: $('bbq-workingDaysPerMonthLabel'),\n    seasonMonths: $('bbq-seasonMonthsLabel'),\n    maintenance: $('bbq-maintenanceLabel'),\n    insurance: $('bbq-insuranceLabel'),\n    location: $('bbq-locationLabel'),\n  };\n\n  function getValues(){\n    return {\n      pricePerHour: Number(inputs.pricePerHour.value),\n      tripsPerDay: Number(inputs.tripsPerDay.value),\n      numberOfBoats: Number(inputs.numberOfBoats.value),\n      workingDaysPerMonth: Number(inputs.workingDaysPerMonth.value),\n      seasonMonths: Number(inputs.seasonMonths.value),\n      maintenanceCostPerMonth: Number(inputs.maintenanceCostPerMonth.value),\n      insuranceCostPerMonth: Number(inputs.insuranceCostPerMonth.value),\n      locationCostPerMonth: Number(inputs.locationCostPerMonth.value),\n    };\n  }\n\n  function render(){\n    const v = getValues();\n\n    \/\/ labels\n    labels.pricePerHour.textContent = v.pricePerHour + '\u20ac';\n    labels.tripsPerDay.textContent = v.tripsPerDay;\n    labels.numberOfBoats.textContent = v.numberOfBoats;\n    labels.workingDaysPerMonth.textContent = v.workingDaysPerMonth;\n    labels.seasonMonths.textContent = v.seasonMonths;\n    labels.maintenance.textContent = v.maintenanceCostPerMonth + '\u20ac';\n    labels.insurance.textContent = v.insuranceCostPerMonth + '\u20ac';\n    labels.location.textContent = v.locationCostPerMonth + '\u20ac';\n\n    \/\/ calculs (comme ton code React)\n    const dailyRevenue   = v.pricePerHour * v.tripsPerDay * v.numberOfBoats;\n    const monthlyRevenue = dailyRevenue * v.workingDaysPerMonth;\n    const yearlyRevenue  = monthlyRevenue * v.seasonMonths;\n\n    const monthlyCosts = v.maintenanceCostPerMonth + v.insuranceCostPerMonth + v.locationCostPerMonth;\n    const yearlyCosts  = monthlyCosts * 12;\n\n    const monthlyProfit = monthlyRevenue - monthlyCosts;\n    const yearlyProfit  = yearlyRevenue - yearlyCosts;\n\n    const investmentCost = 25000 * v.numberOfBoats;\n    const roiMonths = (monthlyProfit > 0) ? (investmentCost \/ monthlyProfit) : Infinity;\n\n    \/\/ cards\n    $('bbq-monthlyRevenue').textContent = fmt(monthlyRevenue) + '\u20ac';\n    $('bbq-dailyAvg').textContent = (v.workingDaysPerMonth > 0 ? (monthlyRevenue \/ v.workingDaysPerMonth).toFixed(0) : '0') + '\u20ac\/jour';\n\n    $('bbq-monthlyProfit').textContent = fmt(monthlyProfit) + '\u20ac';\n    $('bbq-yearlyProfit').textContent  = fmt(yearlyProfit) + '\u20ac';\n    $('bbq-seasonLabel').textContent   = 'Sur ' + v.seasonMonths + ' mois';\n\n    $('bbq-roi').textContent = (roiMonths === Infinity) ? '\u2014' : roiMonths.toFixed(1) + ' mois';\n\n    \/\/ costs\n    $('bbq-monthlyCosts').textContent = fmt(monthlyCosts) + '\u20ac';\n    $('bbq-yearlyCosts').textContent  = fmt(yearlyCosts) + '\u20ac';\n\n    \/\/ summary\n    $('bbq-investment').textContent     = fmt(investmentCost) + '\u20ac';\n    $('bbq-monthlyRevenue2').textContent= fmt(monthlyRevenue) + '\u20ac';\n    $('bbq-monthlyProfit2').textContent = fmt(monthlyProfit) + '\u20ac';\n    $('bbq-yearlyProfit2').textContent  = fmt(yearlyProfit) + '\u20ac';\n  }\n\n  Object.values(inputs).forEach(el => el.addEventListener('input', render));\n  render();\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0fdf956 e-flex e-con-boxed e-con e-parent\" data-id=\"0fdf956\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-03a6205 elementor-hidden-desktop elementor-hidden-tablet elementor-widget elementor-widget-html\" data-id=\"03a6205\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"bbq-sim-compact\" id=\"bbq-sim-m\"><style>\/* ===== BBQ SIM \u2013 Mobile Compact ===== *\/\n    .bbq-sim-compact{\n      font-family: inherit;\n      background:#F3F8FB;\n      border-radius:18px;\n      padding:14px;\n      color:#1F2933;\n    }\n\n    .bbq-sim-compact .bbq-header h2{\n      margin:0;\n      font-size:18px;\n      font-weight:900;\n      letter-spacing:-0.02em;\n      color:#0B3C5D;\n    }\n    .bbq-sim-compact .bbq-header p{\n      margin:6px 0 0;\n      font-size:12px;\n      color:#516173;\n    }\n\n    \/* Cards: 2 colonnes, tr\u00e8s compact *\/\n    .bbq-sim-compact .bbq-cards{\n      display:grid;\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n      gap:10px;\n      margin:12px 0 14px;\n    }\n    .bbq-sim-compact .bbq-card{\n      background:#fff;\n      border:1px solid #E6EEF5;\n      border-radius:12px;\n      padding:10px 10px;\n      box-shadow: 0 8px 16px rgba(11,60,93,.06);\n    }\n    .bbq-sim-compact .bbq-card-title{\n      font-size:11px;\n      font-weight:700;\n      color:#748599;\n      margin-bottom:4px;\n    }\n    .bbq-sim-compact .bbq-card-value{\n      font-size:18px;\n      font-weight:900;\n      color:#0B3C5D;\n      line-height:1.05;\n    }\n    .bbq-sim-compact .bbq-card-sub{\n      font-size:11px;\n      color:#5E6E7E;\n      margin-top:6px;\n      line-height:1.2;\n    }\n\n    \/* ROI en \"highlight\" discret *\/\n    .bbq-sim-compact .bbq-card-cta{\n      border-color:#dbeafe;\n      box-shadow: 0 10px 18px rgba(10,116,214,.10);\n    }\n\n    \/* 1 colonne mais sections compactes *\/\n    .bbq-sim-compact .bbq-grid{\n      display:grid;\n      grid-template-columns:1fr;\n      gap:12px;\n    }\n    .bbq-sim-compact .bbq-panel{\n      background: rgba(255,255,255,.65);\n      border:1px solid #E6EEF5;\n      border-radius:14px;\n      padding:12px;\n      box-shadow: 0 8px 16px rgba(11,60,93,.05);\n    }\n    .bbq-sim-compact .bbq-panel h3{\n      margin:0 0 10px;\n      font-size:14px;\n      font-weight:900;\n      color:#0B3C5D;\n    }\n\n    .bbq-sim-compact .bbq-field{ margin:10px 0; }\n    .bbq-sim-compact .bbq-field-top{\n      display:flex;\n      justify-content:space-between;\n      align-items:baseline;\n      gap:8px;\n      margin-bottom:6px;\n    }\n    .bbq-sim-compact .bbq-field label{\n      font-size:12px;\n      font-weight:700;\n      color:#2D3B4A;\n      line-height:1.2;\n    }\n\n    \/* Valeur = mini badge sobre *\/\n    .bbq-sim-compact .bbq-pill,\n    .bbq-sim-compact .bbq-pill-warm,\n    .bbq-sim-compact .bbq-pill-orange{\n      font-size:12px;\n      font-weight:900;\n      color:#0B3C5D;\n      background:#EAF2F8;\n      border:1px solid #DCEAF5;\n      padding:2px 8px;\n      border-radius:999px;\n      white-space:nowrap;\n    }\n\n    \/* Sliders fins + touch-friendly *\/\n    .bbq-sim-compact input[type=\"range\"]{\n      -webkit-appearance:none;\n      appearance:none;\n      width:100%;\n      height:30px;\n      background:#fff;\n      border:1px solid #E6EEF5;\n      border-radius:999px;\n      padding:0 12px;\n      box-shadow: 0 6px 12px rgba(11,60,93,.05);\n      outline:none;\n    }\n    .bbq-sim-compact input[type=\"range\"]::-webkit-slider-runnable-track{\n      height:8px;\n      background:#E9F1F7;\n      border-radius:999px;\n    }\n    .bbq-sim-compact input[type=\"range\"]::-webkit-slider-thumb{\n      -webkit-appearance:none;\n      appearance:none;\n      width:14px;\n      height:14px;\n      border-radius:999px;\n      background:#0A74D6;\n      border:3px solid #fff;\n      margin-top:-3px;\n      box-shadow: 0 6px 14px rgba(10,116,214,.22);\n    }\n    .bbq-sim-compact input[type=\"range\"]::-moz-range-track{\n      height:8px;\n      background:#E9F1F7;\n      border-radius:999px;\n    }\n    .bbq-sim-compact input[type=\"range\"]::-moz-range-thumb{\n      width:14px;\n      height:14px;\n      border-radius:999px;\n      background:#0A74D6;\n      border:3px solid #fff;\n      box-shadow: 0 6px 14px rgba(10,116,214,.22);\n    }\n\n    .bbq-sim-compact .bbq-minmax{\n      display:flex;\n      justify-content:space-between;\n      font-size:10px;\n      color:#6B7A8A;\n      margin-top:6px;\n    }\n\n    \/* Totaux + r\u00e9sum\u00e9 : compact *\/\n    .bbq-sim-compact .bbq-totals{\n      border-top:1px solid #E6EEF5;\n      margin-top:10px;\n      padding-top:10px;\n    }\n    .bbq-sim-compact .bbq-row{\n      display:flex;\n      justify-content:space-between;\n      align-items:center;\n      margin:6px 0;\n      gap:10px;\n    }\n    .bbq-sim-compact .bbq-row span{\n      font-size:12px;\n      color:#6B7A8A;\n    }\n    .bbq-sim-compact .bbq-row strong{\n      font-size:13px;\n      color:#0B3C5D;\n      white-space:nowrap;\n    }\n    .bbq-sim-compact .bbq-green{ color:#16a34a; }\n\n    .bbq-sim-compact .bbq-summary{\n      margin-top:10px;\n      padding:10px;\n      border-radius:12px;\n      background:#fff;\n      border:1px solid #E6EEF5;\n      box-shadow: 0 6px 12px rgba(11,60,93,.05);\n    }\n    .bbq-sim-compact .bbq-summary h4{\n      margin:0 0 8px;\n      font-size:13px;\n      font-weight:900;\n      color:#0B3C5D;\n    }\n\n    \/* Info : on le rend optionnel \/ compact *\/\n    .bbq-sim-compact .bbq-info{\n      margin-top:12px;\n      background:#fff;\n      border:1px solid #E6EEF5;\n      border-radius:14px;\n      padding:12px;\n      box-shadow: 0 6px 12px rgba(11,60,93,.05);\n    }\n    .bbq-sim-compact .bbq-info h3{\n      margin:0 0 8px;\n      font-size:14px;\n      font-weight:900;\n      color:#0B3C5D;\n    }\n    .bbq-sim-compact .bbq-info p,\n    .bbq-sim-compact .bbq-info li{\n      font-size:12px;\n      color:#506273;\n      line-height:1.3;\n    }\n    .bbq-sim-compact .bbq-info ul{\n      margin:8px 0 0;\n      padding-left:16px;\n    }\n  <\/style><div class=\"bbq-header\"><h2>Calculateur de Rentabilit\u00e9<\/h2><p>Vue d\u2019ensemble mobile (compacte)<\/p><\/div><div class=\"bbq-cards\"><div class=\"bbq-card\"><div class=\"bbq-card-title\">Revenu mensuel<\/div><div class=\"bbq-card-value\" id=\"bbq-monthlyRevenue-m\">\u2014<\/div><div class=\"bbq-card-sub\" id=\"bbq-dailyAvg-m\">\u2014<\/div><\/div><div class=\"bbq-card\"><div class=\"bbq-card-title\">Profit mensuel<\/div><div class=\"bbq-card-value\" id=\"bbq-monthlyProfit-m\">\u2014<\/div><div class=\"bbq-card-sub\">Apr\u00e8s charges<\/div><\/div><div class=\"bbq-card\"><div class=\"bbq-card-title\">Profit annuel<\/div><div class=\"bbq-card-value\" id=\"bbq-yearlyProfit-m\">\u2014<\/div><div class=\"bbq-card-sub\" id=\"bbq-seasonLabel-m\">\u2014<\/div><\/div><div class=\"bbq-card bbq-card-cta\"><div class=\"bbq-card-title\">ROI<\/div><div class=\"bbq-card-value\" id=\"bbq-roi-m\">\u2014<\/div><div class=\"bbq-card-sub\">Retour investissement<\/div><\/div><\/div><div class=\"bbq-grid\"><div class=\"bbq-panel\"><h3>Param\u00e8tres<\/h3><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Prix \/ heure<\/label><span class=\"bbq-pill\" id=\"bbq-pricePerHourLabel-m\">80\u20ac<\/span><\/div><input id=\"bbq-pricePerHour-m\" type=\"range\" min=\"40\" max=\"200\" step=\"5\" value=\"80\"><div class=\"bbq-minmax\"><span>40\u20ac<\/span><span>200\u20ac<\/span><\/div><\/div><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Sorties \/ jour<\/label><span class=\"bbq-pill\" id=\"bbq-tripsPerDayLabel-m\">4<\/span><\/div><input id=\"bbq-tripsPerDay-m\" type=\"range\" min=\"1\" max=\"8\" step=\"1\" value=\"4\"><div class=\"bbq-minmax\"><span>1<\/span><span>8<\/span><\/div><\/div><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Bateaux<\/label><span class=\"bbq-pill\" id=\"bbq-numberOfBoatsLabel-m\">2<\/span><\/div><input id=\"bbq-numberOfBoats-m\" type=\"range\" min=\"1\" max=\"10\" step=\"1\" value=\"2\"><div class=\"bbq-minmax\"><span>1<\/span><span>10<\/span><\/div><\/div><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Jours \/ mois<\/label><span class=\"bbq-pill\" id=\"bbq-workingDaysPerMonthLabel-m\">25<\/span><\/div><input id=\"bbq-workingDaysPerMonth-m\" type=\"range\" min=\"15\" max=\"30\" step=\"1\" value=\"25\"><div class=\"bbq-minmax\"><span>15<\/span><span>30<\/span><\/div><\/div><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Mois \/ an<\/label><span class=\"bbq-pill\" id=\"bbq-seasonMonthsLabel-m\">6<\/span><\/div><input id=\"bbq-seasonMonths-m\" type=\"range\" min=\"3\" max=\"12\" step=\"1\" value=\"6\"><div class=\"bbq-minmax\"><span>3<\/span><span>12<\/span><\/div><\/div><\/div><div class=\"bbq-panel\"><h3>Co\u00fbts<\/h3><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Maintenance<\/label><span class=\"bbq-pill\" id=\"bbq-maintenanceLabel-m\">500\u20ac<\/span><\/div><input id=\"bbq-maintenanceCostPerMonth-m\" type=\"range\" min=\"100\" max=\"2000\" step=\"50\" value=\"500\"><\/div><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Assurance<\/label><span class=\"bbq-pill\" id=\"bbq-insuranceLabel-m\">300\u20ac<\/span><\/div><input id=\"bbq-insuranceCostPerMonth-m\" type=\"range\" min=\"100\" max=\"1500\" step=\"50\" value=\"300\"><\/div><div class=\"bbq-field\"><div class=\"bbq-field-top\"><label>Emplacement<\/label><span class=\"bbq-pill\" id=\"bbq-locationLabel-m\">800\u20ac<\/span><\/div><input id=\"bbq-locationCostPerMonth-m\" type=\"range\" min=\"200\" max=\"3000\" step=\"100\" value=\"800\"><\/div><div class=\"bbq-totals\"><div class=\"bbq-row\"><span>Total \/ mois<\/span><strong id=\"bbq-monthlyCosts-m\">\u2014<\/strong><\/div><div class=\"bbq-row\"><span>Total \/ an<\/span><strong id=\"bbq-yearlyCosts-m\">\u2014<\/strong><\/div><\/div><div class=\"bbq-summary\"><h4>R\u00e9sum\u00e9<\/h4><div class=\"bbq-row\"><span>Investissement<\/span><strong id=\"bbq-investment-m\">\u2014<\/strong><\/div><div class=\"bbq-row\"><span>Revenus \/ mois<\/span><strong id=\"bbq-monthlyRevenue2-m\">\u2014<\/strong><\/div><div class=\"bbq-row\"><span>Profit \/ mois<\/span><strong class=\"bbq-green\" id=\"bbq-monthlyProfit2-m\">\u2014<\/strong><\/div><div class=\"bbq-row\"><span>Profit \/ an<\/span><strong class=\"bbq-green\" id=\"bbq-yearlyProfit2-m\">\u2014<\/strong><\/div><\/div><\/div><\/div><div class=\"bbq-info\"><h3>Note<\/h3><p>Estimations bas\u00e9es sur des moyennes. R\u00e9sultats variables selon lieu\/saison\/marketing.<\/p><\/div><\/div><script>(function(){\n  const root = document.getElementById('bbq-sim-m');\n  if(!root) return;\n\n  const $ = (id) => document.getElementById(id);\n  const fmt = (n) => Number(n).toLocaleString('fr-FR');\n\n  const inputs = {\n    pricePerHour: $('bbq-pricePerHour-m'),\n    tripsPerDay: $('bbq-tripsPerDay-m'),\n    numberOfBoats: $('bbq-numberOfBoats-m'),\n    workingDaysPerMonth: $('bbq-workingDaysPerMonth-m'),\n    seasonMonths: $('bbq-seasonMonths-m'),\n    maintenanceCostPerMonth: $('bbq-maintenanceCostPerMonth-m'),\n    insuranceCostPerMonth: $('bbq-insuranceCostPerMonth-m'),\n    locationCostPerMonth: $('bbq-locationCostPerMonth-m'),\n  };\n\n  const labels = {\n    pricePerHour: $('bbq-pricePerHourLabel-m'),\n    tripsPerDay: $('bbq-tripsPerDayLabel-m'),\n    numberOfBoats: $('bbq-numberOfBoatsLabel-m'),\n    workingDaysPerMonth: $('bbq-workingDaysPerMonthLabel-m'),\n    seasonMonths: $('bbq-seasonMonthsLabel-m'),\n    maintenance: $('bbq-maintenanceLabel-m'),\n    insurance: $('bbq-insuranceLabel-m'),\n    location: $('bbq-locationLabel-m'),\n  };\n\n  const outputs = {\n    monthlyRevenue: $('bbq-monthlyRevenue-m'),\n    dailyAvg: $('bbq-dailyAvg-m'),\n    monthlyProfit: $('bbq-monthlyProfit-m'),\n    yearlyProfit: $('bbq-yearlyProfit-m'),\n    seasonLabel: $('bbq-seasonLabel-m'),\n    roi: $('bbq-roi-m'),\n    monthlyCosts: $('bbq-monthlyCosts-m'),\n    yearlyCosts: $('bbq-yearlyCosts-m'),\n    investment: $('bbq-investment-m'),\n    monthlyRevenue2: $('bbq-monthlyRevenue2-m'),\n    monthlyProfit2: $('bbq-monthlyProfit2-m'),\n    yearlyProfit2: $('bbq-yearlyProfit2-m'),\n  };\n\n  function getValues(){\n    return {\n      pricePerHour: Number(inputs.pricePerHour.value),\n      tripsPerDay: Number(inputs.tripsPerDay.value),\n      numberOfBoats: Number(inputs.numberOfBoats.value),\n      workingDaysPerMonth: Number(inputs.workingDaysPerMonth.value),\n      seasonMonths: Number(inputs.seasonMonths.value),\n      maintenanceCostPerMonth: Number(inputs.maintenanceCostPerMonth.value),\n      insuranceCostPerMonth: Number(inputs.insuranceCostPerMonth.value),\n      locationCostPerMonth: Number(inputs.locationCostPerMonth.value),\n    };\n  }\n\n  function render(){\n    const v = getValues();\n\n    labels.pricePerHour.textContent = v.pricePerHour + '\u20ac';\n    labels.tripsPerDay.textContent = v.tripsPerDay;\n    labels.numberOfBoats.textContent = v.numberOfBoats;\n    labels.workingDaysPerMonth.textContent = v.workingDaysPerMonth;\n    labels.seasonMonths.textContent = v.seasonMonths;\n    labels.maintenance.textContent = v.maintenanceCostPerMonth + '\u20ac';\n    labels.insurance.textContent = v.insuranceCostPerMonth + '\u20ac';\n    labels.location.textContent = v.locationCostPerMonth + '\u20ac';\n\n    const dailyRevenue   = v.pricePerHour * v.tripsPerDay * v.numberOfBoats;\n    const monthlyRevenue = dailyRevenue * v.workingDaysPerMonth;\n    const yearlyRevenue  = monthlyRevenue * v.seasonMonths;\n\n    const monthlyCosts = v.maintenanceCostPerMonth + v.insuranceCostPerMonth + v.locationCostPerMonth;\n    const yearlyCosts  = monthlyCosts * 12;\n\n    const monthlyProfit = monthlyRevenue - monthlyCosts;\n    const yearlyProfit  = yearlyRevenue - yearlyCosts;\n\n    const investmentCost = 25000 * v.numberOfBoats;\n    const roiMonths = (monthlyProfit > 0) ? (investmentCost \/ monthlyProfit) : Infinity;\n\n    outputs.monthlyRevenue.textContent = fmt(monthlyRevenue) + '\u20ac';\n    outputs.dailyAvg.textContent = (v.workingDaysPerMonth > 0 ? (monthlyRevenue \/ v.workingDaysPerMonth).toFixed(0) : '0') + '\u20ac\/jour';\n\n    outputs.monthlyProfit.textContent = fmt(monthlyProfit) + '\u20ac';\n    outputs.yearlyProfit.textContent  = fmt(yearlyProfit) + '\u20ac';\n    outputs.seasonLabel.textContent   = 'Sur ' + v.seasonMonths + ' mois';\n\n    outputs.roi.textContent = (roiMonths === Infinity) ? '\u2014' : roiMonths.toFixed(1) + ' mois';\n\n    outputs.monthlyCosts.textContent = fmt(monthlyCosts) + '\u20ac';\n    outputs.yearlyCosts.textContent  = fmt(yearlyCosts) + '\u20ac';\n\n    outputs.investment.textContent      = fmt(investmentCost) + '\u20ac';\n    outputs.monthlyRevenue2.textContent = fmt(monthlyRevenue) + '\u20ac';\n    outputs.monthlyProfit2.textContent  = fmt(monthlyProfit) + '\u20ac';\n    outputs.yearlyProfit2.textContent   = fmt(yearlyProfit) + '\u20ac';\n  }\n\n  const missing = Object.entries(inputs).filter(([,el]) => !el).map(([k])=>k);\n  if(missing.length){\n    console.warn('[BBQ SIM MOBILE COMPACT] Inputs missing:', missing);\n    return;\n  }\n\n  Object.values(inputs).forEach(el => el.addEventListener('input', render));\n  render();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-bce2152 e-flex e-con-boxed e-con e-parent\" data-id=\"bce2152\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-cf6f65b pa-icon-pos-after elementor-widget elementor-widget-premium-addon-image-button\" data-id=\"cf6f65b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"premium-addon-image-button.default\">\n\t\t\t\t\t\n\t\t<a class=\"premium-image-button-none premium-image-button premium-btn-lg premium-image-button-none\" href=\"https:\/\/bbqboat.fr\/en\/contact-bbq-boat\/\">\n\t\t\t<div class=\"premium-image-button-text-icon-wrapper\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<svg class=\"premium-svg-nodraw premium-drawable-icon e-font-icon-svg e-fas-angle-right\" aria-hidden=\"true\" viewBox=\"0 0 256 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z\"><\/path><\/svg>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t<span >\n\t\t\t\t\t\tLet's Talk\t\t\t\t\t<\/span>\n\t\t\t\t\n\t\t\t<\/div>\n\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/a>\n\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>PROFITABILITY SIMULATOR CALCULATE THE PROFITABILITY OF YOUR PROJECT WITH BBQ BOAT Profitability Calculator Simulate your revenue with BBQ Boat Monthly Revenue \u2014 \u2014 Monthly Profit \u2014 After Expenses Annual Profit \u2014 Based on 6 months ROI \u2014 Return on Investment Business Parameters Rental Price per Hour \u20ac80 \u20ac40\u20ac200 Trips per Day 4 18 Number of [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-templates\/template-full-width-page-without-header-title.php","meta":{"content-type":"","footnotes":""},"class_list":["post-8749","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/bbqboat.fr\/en\/wp-json\/wp\/v2\/pages\/8749","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bbqboat.fr\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bbqboat.fr\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bbqboat.fr\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/bbqboat.fr\/en\/wp-json\/wp\/v2\/comments?post=8749"}],"version-history":[{"count":0,"href":"https:\/\/bbqboat.fr\/en\/wp-json\/wp\/v2\/pages\/8749\/revisions"}],"wp:attachment":[{"href":"https:\/\/bbqboat.fr\/en\/wp-json\/wp\/v2\/media?parent=8749"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}