Fill Rate Como Se Calcula

Calculadora de Fill Rate (Tasa de Cumplimiento) body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; line-height: 1.6; color: #333; max-width: 800px; margin: 0 auto; padding: 20px; background-color: #f9f9f9; } .calculator-container { background: #ffffff; padding: 30px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); margin-bottom: 40px; border: 1px solid #e0e0e0; } .calculator-title { text-align: center; color: #2c3e50; margin-bottom: 25px; font-size: 24px; font-weight: 700; } .input-group { margin-bottom: 20px; } .input-group label { display: block; margin-bottom: 8px; font-weight: 600; color: #555; } .input-group input { width: 100%; padding: 12px; border: 1px solid #ddd; border-radius: 6px; font-size: 16px; box-sizing: border-box; transition: border-color 0.3s; } .input-group input:focus { border-color: #3498db; outline: none; } .btn-calc { width: 100%; background-color: #3498db; color: white; border: none; padding: 15px; font-size: 18px; font-weight: bold; border-radius: 6px; cursor: pointer; transition: background-color 0.3s; } .btn-calc:hover { background-color: #2980b9; } .result-box { margin-top: 25px; padding: 20px; background-color: #f0f7fb; border-left: 5px solid #3498db; border-radius: 4px; display: none; } .result-value { font-size: 32px; font-weight: 800; color: #2c3e50; margin: 10px 0; } .result-label { font-size: 14px; color: #7f8c8d; text-transform: uppercase; letter-spacing: 1px; } .metric-row { display: flex; justify-content: space-between; margin-top: 10px; padding-top: 10px; border-top: 1px solid #ddd; } .status-indicator { font-weight: bold; padding: 4px 8px; border-radius: 4px; } .status-good { color: #27ae60; background: #e8f8f5; } .status-warn { color: #f39c12; background: #fef9e7; } .status-bad { color: #c0392b; background: #fdedec; } /* Article Styles */ .content-section { background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 2px 5px rgba(0,0,0,0.05); } h2 { color: #2c3e50; border-bottom: 2px solid #ecf0f1; padding-bottom: 10px; margin-top: 30px; } h3 { color: #34495e; margin-top: 25px; } p { margin-bottom: 15px; text-align: justify; } ul { margin-bottom: 20px; } li { margin-bottom: 8px; } .formula-box { background-color: #f8f9fa; padding: 15px; border-radius: 6px; font-family: monospace; text-align: center; font-size: 1.2em; border: 1px dashed #bdc3c7; margin: 20px 0; }
Calculadora de Fill Rate
Fill Rate Calculado
0.00%
Unidades Faltantes (Stockout): 0
Estado de Inventario:

¿Qué es el Fill Rate y cómo se calcula?

El Fill Rate (Tasa de Cumplimiento) es uno de los indicadores clave de desempeño (KPI) más importantes en la gestión de la cadena de suministro y logística. Mide la eficacia con la que una empresa es capaz de satisfacer la demanda de sus clientes con el inventario disponible de manera inmediata, sin dejar pedidos pendientes (backorders) ni perder ventas.

Fórmula del Fill Rate

Para calcular el Fill Rate, se compara la cantidad de productos que se entregaron satisfactoriamente frente a la cantidad total que el cliente solicitó. La fórmula básica es la siguiente:

Fill Rate = (Total Entregado / Total Solicitado) × 100

Donde:

  • Total Solicitado (Demanda): Es la cantidad total de unidades que los clientes han pedido en un periodo determinado.
  • Total Entregado (Suministro): Es la cantidad de unidades que realmente se enviaron y entregaron al cliente a tiempo y completas.

Ejemplo de Cálculo

Supongamos que una distribuidora de componentes electrónicos recibe pedidos por un total de 5,000 unidades en el mes de marzo. Sin embargo, debido a roturas de stock, solo pudo enviar inmediatamente 4,850 unidades.

El cálculo sería:

  • Fill Rate = (4,850 / 5,000) × 100
  • Fill Rate = 0.97 × 100
  • Resultado: 97%

Esto significa que la empresa cumplió con el 97% de la demanda inmediata, y tuvo un 3% de demanda insatisfecha (Stockout).

Importancia en la Logística

Monitorear este indicador es vital por varias razones:

  1. Satisfacción del Cliente: Un Fill Rate bajo indica que los clientes no están recibiendo lo que piden, lo que puede llevar a la pérdida de confianza y de futuros negocios.
  2. Gestión de Inventarios: Ayuda a identificar si el nivel de stock de seguridad es adecuado o si hay problemas en la reposición.
  3. Rentabilidad: Los pedidos pendientes generan costos adicionales de gestión, envío urgente o pérdida directa de ventas.

Tipos de Fill Rate

Es importante distinguir entre las diferentes variaciones de esta métrica:

  • Item Fill Rate (Tasa de Relleno de Artículos): Porcentaje de unidades individuales entregadas vs. pedidas (es lo que calcula esta herramienta).
  • Order Fill Rate (Tasa de Relleno de Pedidos): Porcentaje de pedidos completos entregados sin faltantes. Es una medida más estricta, ya que si falta 1 artículo de un pedido de 10, el pedido cuenta como fallido.
  • Line Fill Rate (Tasa de Relleno de Líneas): Porcentaje de líneas de pedido (SKUs distintos) servidas completamente.
function calculateFillRate() { // Get values from inputs var demandInput = document.getElementById('totalDemand'); var supplyInput = document.getElementById('totalSupply'); var resultBox = document.getElementById('resultBox'); var percentageResult = document.getElementById('percentageResult'); var missingUnitsDisplay = document.getElementById('missingUnits'); var statusDisplay = document.getElementById('statusMessage'); // Parse values var demand = parseFloat(demandInput.value); var supply = parseFloat(supplyInput.value); // Validation logic if (isNaN(demand) || demand <= 0) { alert("Por favor, ingrese una cantidad válida para la Demanda Total (mayor a 0)."); return; } if (isNaN(supply) || supply demand) { // Usually fill rate doesn't go over 100% unless calculating substitutions // We will cap the visual calculation at 100% but allow math logic effectiveSupply = demand; } // Calculation var fillRate = (effectiveSupply / demand) * 100; var missing = demand – effectiveSupply; if (missing = 98) { statusDisplay.innerHTML = "Excelente"; statusDisplay.classList.add('status-good'); } else if (fillRate >= 90) { statusDisplay.innerHTML = "Aceptable"; statusDisplay.classList.add('status-warn'); } else { statusDisplay.innerHTML = "Crítico (Bajo)"; statusDisplay.classList.add('status-bad'); } }

Leave a Comment