Calculadora COGS
Si abre con 20.000 en existencias, compra 80.000 y cierra con 15.000, su coste de las ventas es de 85.000. Escriba el inventario inicial, las compras netas y el recuento final de cualquier periodo y obtenga el COGS del cierre. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Inventario inicial
- 20 000
- Compras
- 80 000
- Inventario final
- 15 000
- Mercancía disponible
- 100 000
- Costo de ventas
- 85 000
El coste de las ventas, casi siempre abreviado COGS en la cuenta de resultados, es el coste de inventario de las mercancías que un negocio vendió de verdad en un periodo. La identidad periódica es inventario inicial más compras menos inventario final. Contables, comerciantes y estudiantes de contabilidad usan esa fórmula de tres términos en cada cierre. Esta calculadora de COGS acepta esas tres cantidades finitas, devuelve el coste de las ventas y rechaza un inventario inicial o final negativo para que la identidad nunca consuma una cifra de existencias imposible.
Qué mide el COGS y la identidad periódica de inventario
El coste de las ventas es el coste imputado a las unidades que salieron del inventario porque un cliente las compró, no el coste de las unidades que siguen en el estante. En un sistema periódico de mercancías usted no sigue cada venta contra una ficha perpetua de existencias; reconstruye el coste vendido al cierre del periodo con una identidad de tres líneas: inventario inicial, más compras netas del periodo, menos inventario final contado o valorado al cierre. Esa identidad es la definición que implementa esta calculadora.
El inventario inicial es el activo de mercancías con el que abrieron los libros. Las compras son el coste neto de las mercancías entrantes en la ventana: el coste de factura de mercancía adquirida para revender. El inventario final es la mercancía que sigue sin vender cuando cierra el periodo.
Restar ese stock sobrante de las mercancías disponibles para la venta (inicial más compras) aísla la porción vendida, que es el COGS. Un comercio que abrió con veinte mil, compró ochenta mil y cerró con quince mil tiene coste de las ventas de ochenta y cinco mil, porque veinte más ochenta menos quince es ochenta y cinco. Se permite inventario de apertura cero: un revendedor nuevo puede tener inventario inicial nulo y aun así calcular el COGS a partir de las compras y el recuento al cierre.
Se permiten compras nulas cuando el periodo solo vendió existencias previas. Un inventario inicial o final negativo no es una cifra de stock; es un error de datos, y esta calculadora lo rechaza en lugar de inventar un coste vendido a partir de un estante imposible. Mantenga las tres entradas en la misma moneda y el mismo periodo.
Mezclar un año de compras con un recuento de fin de mes es cómo una cifra de COGS miente en silencio. La fórmula son deliberadamente tres pasos aritméticos para que claves de deberes, oráculos LMS y cuadernos de cierre compartan una definición reproducible sin deriva de redondeo intermedio en la hoja.
Dónde gana su sitio una calculadora de COGS
Quienes escriben cogs en un buscador ya conocen la sigla y quieren la cifra de coste vendido, no una lección que arranque desde sistemas de inventario perpetuo frente a periódico.
Una editorial que posiciona por esa consulta breve atiende a comerciantes que tienen un recuento de apertura, un total de compras y un recuento de cierre, a estudiantes que deben rellenar la sección de coste de las ventas de una cuenta de resultados, y a contables que necesitan un oráculo determinista que rechace un valor de inventario negativo en lugar de producir en silencio un gasto absurdo.
Los minoristas pequeños que arman un cuaderno de fin de mes quieren la misma cifra inicial-más-compras-menos-final que los analistas escriben en diapositivas, sin errores de mano cuando cambian los decimales de la moneda. Los cursos de aula y de certificación que enseñan el método periódico de inventario necesitan un servicio que devuelva COGS y mercancías disponibles y nada más, para que un calificador compare contra una clave de libro sin que esta herramienta pretenda llevar un libro mayor completo. La validación fallida no consume saldo.
Combine esta capacidad con una herramienta aparte de beneficio bruto o de rotación de inventario cuando necesite esas identidades; conserve esta superficie centrada en el coste de mercancía que la gente quiere decir cuando busca cogs.
Qué puede hacer con ella
Cierre mensual de mercancías
Introduzca existencias de apertura, compras netas y el recuento de cierre para publicar el COGS del periodo sin reconstruir la identidad en una hoja de cálculo.
Preparación del beneficio bruto sin tomar las ventas
Calcule primero el coste de las ventas y luego réstelo de las ventas netas en su propio cuaderno; este servicio devuelve solo el COGS.
Preguntas frecuentes
¿Cómo se calcula el COGS?
El coste de las ventas iguala el inventario inicial más las compras menos el inventario final. Ejemplo: 20000 + 80000 − 15000 = 85000.
¿Qué ocurre si un valor de inventario es negativo?
Un inventario inicial o final negativo no es una cifra de existencias, así que la petición se rechaza y no se factura.
¿Pueden ser cero el inventario inicial o las compras?
Sí. Un comercio nuevo puede abrir con existencias nulas, y un periodo puede no tener compras. Solo se rechaza el inventario negativo (o las compras negativas).
¿Usa FIFO, LIFO o flete de entrada?
No. La calculadora aplica solo la identidad periódica. Incorpore flete de entrada, devoluciones y costeo por capas en las tres entradas antes de llamar.
¿Por qué las tres cifras deben referirse al mismo periodo?
Porque el COGS solo cuadra cuando el inventario inicial, las compras y el recuento final describen una misma ventana y una misma moneda. Mezclar las compras de un año con el recuento de fin de mes da una cifra que parece correcta pero no lo es.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/fin/cogs \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"beginning_inventory":20000,"purchases":80000,"ending_inventory":15000}'const res = await fetch("https://api.kit.forhosting.com/fin/cogs", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"beginning_inventory": 20000,
"purchases": 80000,
"ending_inventory": 15000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/cogs",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"beginning_inventory": 20000,
"purchases": 80000,
"ending_inventory": 15000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/cogs", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"beginning_inventory":20000,"purchases":80000,"ending_inventory":15000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"beginning_inventory":20000,"purchases":80000,"ending_inventory":15000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/cogs", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"beginning_inventory": 20000,
"purchases": 80000,
"ending_inventory": 15000
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.cogs",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Las llamadas correctas se facturan a $0.002; la entrada inválida no se cobra.
Contrato de entrada, forma de la respuesta y validación
Un importe de compras negativo se rechaza igual. Ejemplo: inventario inicial veinte mil, compras ochenta mil e inventario final quince mil producen mercancías disponibles cien mil y coste de las ventas ochenta y cinco mil. Prefiera números desnudos frente a cadenas con formato; no se analizan marcas de moneda, separadores de miles ni etiquetas de unidad al final. Este servicio no toma flete de entrada, devoluciones de compra ni descuentos como líneas aparte, y no asigna capas FIFO o LIFO; incorpore esos ajustes en purchases o en los valores de inventario antes de llamar. Envíe un cuerpo JSON con tres números finitos obligatorios en la misma moneda y la misma ventana de reporting. beginning_inventory es la mercancía en existencias al inicio del periodo y debe ser mayor o igual que cero; se aceptan los alias beginning, begin_inventory, opening_inventory, opening y bi para que una exportación del libro no necesite un paso de cambio de nombre. purchases es la mercancía neta comprada en la ventana y también debe ser no negativa; se aceptan los alias net_purchases, merchandise_purchases y p. ending_inventory es la mercancía que sigue en existencias al cierre y debe ser no negativa; se aceptan los alias ending, end_inventory, closing_inventory, closing y ei. Cada campo puede llegar como número JSON o como cadena numérica que coincida con un patrón decimal finito estricto. Campos ausentes, cadenas vacías, valores no finitos o cualquier valor de inventario negativo fallan con invalid_input nombrando el campo y no se facturan. En caso de éxito el cuerpo repite beginning_inventory, purchases y ending_inventory redondeados, devuelve goods_available como inicial más compras, devuelve cogs como mercancías disponibles menos inventario final, e incluye una cadena de fórmula que reescribe la identidad para que un panel imprima la definición junto al número. El precio de un ítem correcto es un $0.002 fijo.
Dónde gana su sitio una calculadora de COGS
Como la implementación es código analítico parse de tier A, cada llamada correcta se mantiene barata a $0.002 sin tokens de modelo y sin red saliente. Mantenga las peticiones pequeñas, fije cogs y goods_available redondeados en las pruebas, y obtendrá coste de las ventas reproducible para deberes, generadores de examen y cuadernos de cierre ligeros sin levantar un submayor de inventario completo.
Casos de integración
Oráculos de deberes y de cuenta de resultados
Los estudiantes calculan COGS = inicial + compras − final a mano y lo comparan con un resultado determinista que rechaza un valor de inventario negativo como invalid_input.
Preguntas técnicas
¿Cuánto cuesta la calculadora de COGS?
La herramienta del navegador es gratuita. Las peticiones API usan saldo KIT prepago a $0.002 por llamada correcta; la entrada inválida no se factura.