Calcule el tiempo por diapositiva y sección
Convierta una duración fija en un plan de exposición práctico para cada sección y diapositiva.
Ejecutar — gratis
Indique los minutos totales, el número de diapositivas y el peso relativo de cada sección. La calculadora asigna presupuestos exactos en segundos enteros, respeta las prioridades indicadas y garantiza que todas las secciones sumen la duración total. Resulta útil para ensayos, conferencias, presentaciones comerciales, clases, seminarios web y cualquier exposición donde ciertos contenidos merezcan más atención que la que ofrecería un reparto uniforme.
Prepare un cronograma realista antes de ensayar
Un promedio único, como dos minutos por diapositiva, es fácil de calcular, pero rara vez describe una buena presentación. Una portada puede requerir solo un saludo breve, mientras que una demostración, un gráfico clave o una recomendación pueden necesitar varios minutos de explicación y preguntas. Comience por indicar todo el tiempo disponible, contando únicamente la parte que piensa dedicar a exponer. Después, divida la presentación en secciones significativas y anote cuántas diapositivas pertenecen a cada una. Asigne a cada sección un peso relativo positivo. Los pesos son proporciones: 1, 2 y 1 significan que la sección central recibe el doble de tiempo que cualquiera de las contiguas; no representan minutos. El número total declarado debe coincidir con la suma de las diapositivas de las secciones. Esta comprobación explícita detecta diapositivas omitidas, duplicadas o sin asignar antes de que el plan llegue al ensayo. El resultado muestra el promedio general como referencia, pero los tiempos por sección y diapositiva constituyen el cronograma operativo que debe seguir.
Comprenda cómo se asignan los segundos exactos
La calculadora convierte primero la duración solicitada al segundo entero más cercano. Multiplica ese total por la proporción de cada sección respecto de la suma de todos los pesos, lo que genera valores exactos que pueden contener fracciones de segundo. Primero se asignan los segundos enteros y los restantes se entregan a las secciones con los residuos fraccionarios mayores. Cuando hay empate, se conserva el orden original, por lo que llamadas repetidas producen siempre el mismo resultado. Dentro de cada sección, los segundos asignados se reparten de manera uniforme entre sus diapositivas. Si la división no es exacta, las primeras diapositivas de esa sección reciben los segundos sobrantes. Este método garantiza que las secciones sumen la duración total y que las diapositivas sumen el tiempo de su sección. También evita la deriva de redondeo que aparece cuando varios valores se redondean por separado. Cada cifra en segundos incluye además un formato de minutos y segundos, útil tanto para sistemas como para ensayos.
Use los pesos para editar y ensayar
Considere el primer resultado un borrador deliberado, no un guion inamovible. Ensaye con un cronómetro y observe dónde el contenido necesita naturalmente más o menos margen. Si el argumento central resulta apresurado, aumente su peso en lugar de modificar manualmente el tiempo de varias diapositivas. Si la introducción avanza con lentitud, reduzca el peso de esa sección y vuelva a calcular. Como los pesos son relativos, solo importan sus proporciones: 2, 4 y 2 producen la misma distribución que 1, 2 y 1. Tenga presentes la participación del público, las transiciones y un margen final. Puede reservarlos como secciones con nombre y diapositivas propias, o descontar un margen de seguridad de la duración total antes del cálculo. Las asignaciones muy breves son matemáticamente válidas y pueden dar cero segundos a una diapositiva si hay más diapositivas que segundos disponibles, pero indican que conviene editar la presentación. Elimine diapositivas, amplíe la duración o aumente el peso de la sección afectada antes de utilizar el plan en directo.
Qué puede hacer con ella
Ensayar una conferencia
Conceda más tiempo a los hallazgos de la investigación que a la apertura y las referencias, sin exceder el turno asignado.
Planificar una presentación comercial
Equilibre diagnóstico, valor del producto, demostración, precios y próximos pasos según su importancia, no solo según el número de diapositivas.
Estructurar una clase o un seminario web
Distribuya el tiempo entre explicación, ejemplos, actividades, recapitulación y preguntas, y use el cronograma por diapositiva como lista de ensayo.
Preguntas frecuentes
¿Cuánto cuesta?
La calculadora del navegador se puede utilizar gratis en esta página. Cada solicitud de API cuesta $0.002.
¿Los pesos de las secciones deben sumar 100?
No. Los pesos son proporciones relativas. Los valores 1, 2 y 1 funcionan igual que 25, 50 y 25.
¿Por qué deben coincidir las diapositivas de las secciones con el total?
La igualdad garantiza que cada diapositiva pertenezca exactamente a una sección cronometrada y evita una distribución incompleta.
¿Cómo gestiona el redondeo la calculadora?
Asigna segundos enteros mediante el método del mayor residuo, por lo que todas las secciones y diapositivas suman el total exacto redondeado.
¿Debe incluirse el turno de preguntas?
Inclúyalo como sección ponderada si forma parte del tiempo de exposición, o descuéntelo de la duración total si se gestiona por separado.
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/biz/slide-deck-time-budget \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"total_minutes":20,"slide_count":8,"sections":[{"name":"Opening","slides":2,"weight":1},{"name":"Core argument","slides":4,"weight":3},{"name":"Conclusion","slides":2,"weight":1}]}'const res = await fetch("https://api.kit.forhosting.com/biz/slide-deck-time-budget", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"total_minutes": 20,
"slide_count": 8,
"sections": [
{
"name": "Opening",
"slides": 2,
"weight": 1
},
{
"name": "Core argument",
"slides": 4,
"weight": 3
},
{
"name": "Conclusion",
"slides": 2,
"weight": 1
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/biz/slide-deck-time-budget",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"total_minutes": 20,
"slide_count": 8,
"sections": [
{
"name": "Opening",
"slides": 2,
"weight": 1
},
{
"name": "Core argument",
"slides": 4,
"weight": 3
},
{
"name": "Conclusion",
"slides": 2,
"weight": 1
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/biz/slide-deck-time-budget", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"total_minutes":20,"slide_count":8,"sections":[{"name":"Opening","slides":2,"weight":1},{"name":"Core argument","slides":4,"weight":3},{"name":"Conclusion","slides":2,"weight":1}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"total_minutes":20,"slide_count":8,"sections":[{"name":"Opening","slides":2,"weight":1},{"name":"Core argument","slides":4,"weight":3},{"name":"Conclusion","slides":2,"weight":1}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/biz/slide-deck-time-budget", 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
{
"total_minutes": 20,
"slide_count": 8,
"sections": [
{
"name": "Opening",
"slides": 2,
"weight": 1
},
{
"name": "Core argument",
"slides": 4,
"weight": 3
},
{
"name": "Conclusion",
"slides": 2,
"weight": 1
}
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "biz.slide_deck_time_budget",
"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. |