Consumo de datos móviles
Con un plan de 10240 MB, vídeo, mapas, redes sociales y correo que suman 3470 MB dejan 6770 MB, cerca del 33,9 % consumido. Anote lo que ha gastado frente a su cuota mensual y vea lo que le queda, línea a línea. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Límite (MB)
- 10 240
- Número de entradas
- 4
- Usado (MB)
- 3 470
- Restante (MB)
- 6 770
- Porcentaje usado
- 33,8867
Una calculadora mensual de consumo de datos móviles responde una pregunta práctica antes de compartir el portátil, iniciar una videollamada larga o entregar un punto de acceso a un menor: tras estas entradas de uso, ¿cuántos megabytes le quedan en la tarifa y qué porcentaje de la asignación ya se ha consumido? Viajeros en itinerancia con una SIM prepago, padres que comparten un bono familiar, operarios de campo con una línea de trabajo limitada y mesas de soporte que citan datos restantes necesitan una respuesta determinista que no inicie sesión en la cuenta del operador ni raspe el portal de facturación. Esta calculadora acepta un límite mensual en megabytes y una o más entradas de uso también en megabytes, suma lo consumido, lo resta del límite y devuelve los datos restantes más el porcentaje usado.
Cómo se calculan los datos restantes y el porcentaje usado
Parta de una asignación mensual de datos móviles ya expresada en megabytes. La calculadora no convierte gigabytes, kibibytes ni unidades de marketing; usted decide si diez gigabytes son diez mil o diez mil doscientos cuarenta megabytes y envía ese número como límite. Por cada entrada de uso tome una cantidad finita no negativa en la misma unidad de megabyte.
Las etiquetas opcionales nombran la línea para la pantalla, por ejemplo streaming, mapas o una sesión de punto de acceso, pero solo las cantidades entran en la aritmética. El total usado es la suma de todas las cantidades de uso. El porcentaje usado equivale al total usado dividido por el límite y multiplicado por cien.
Cuando el restante es cero o positivo, la tarifa aún tiene margen; cuando es estrictamente negativo, se ha superado la asignación y el exceso es el valor absoluto del restante. Se aceptan líneas de cero megabytes y no cambian el total, lo cual sirve para un día sin tráfico. Las cantidades de uso negativas se rechazan porque una entrada de uso no puede describir una devolución de megabytes en este producto.
Un límite de cero o menos también se rechaza, porque el porcentaje usado dividiría por cero.
Qué puede hacer con ella
Bono de itinerancia prepago
Introduzca su límite mensual en megabytes y cada sesión de punto de acceso o vídeo; observe los megabytes restantes y deténgase antes de agotar el bono.
Revisión de tarifa familiar
Los padres publican los totales de cada hijo frente a un tope compartido para que todos vean el mismo usado, el restante y el porcentaje consumido.
Preguntas frecuentes
¿Cómo funciona la calculadora de consumo de datos móviles?
Envíe un límite mensual en megabytes y una lista no vacía de cantidades de uso en megabytes.
¿Puede ser cero una entrada de uso?
Sí. Se permite un día o una aplicación con 0 MB.
¿Necesito etiquetas en cada entrada de uso?
No. Las etiquetas son opcionales. Los números sueltos se tratan como cantidades en megabytes y las líneas sin etiqueta reciben nombres estables como Entry 1 para la pantalla.
¿Qué pasa si ya superé mi límite mensual de datos?
El restante sale negativo y el exceso es ese valor sin el signo. Así sabe cuántos megabytes ha pasado del plan antes de que llegue la factura.
¿Convierte los gigabytes a megabytes?
No. Escriba la cuota mensual ya en megabytes. Usted decide si un gigabyte cuenta como 1000 MB o si sus 10 GB son 10240 MB, y todas las líneas de uso van en esa misma unidad.
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/life/data-usage \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"limit_mb":10240,"usage":[{"label":"Streaming","amount":2400},{"label":"Maps","amount":180},{"label":"Social","amount":850},{"label":"Email","amount":40}]}'const res = await fetch("https://api.kit.forhosting.com/life/data-usage", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"limit_mb": 10240,
"usage": [
{
"label": "Streaming",
"amount": 2400
},
{
"label": "Maps",
"amount": 180
},
{
"label": "Social",
"amount": 850
},
{
"label": "Email",
"amount": 40
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/life/data-usage",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"limit_mb": 10240,
"usage": [
{
"label": "Streaming",
"amount": 2400
},
{
"label": "Maps",
"amount": 180
},
{
"label": "Social",
"amount": 850
},
{
"label": "Email",
"amount": 40
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/life/data-usage", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"limit_mb":10240,"usage":[{"label":"Streaming","amount":2400},{"label":"Maps","amount":180},{"label":"Social","amount":850},{"label":"Email","amount":40}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"limit_mb":10240,"usage":[{"label":"Streaming","amount":2400},{"label":"Maps","amount":180},{"label":"Social","amount":850},{"label":"Email","amount":40}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/life/data-usage", 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
{
"limit_mb": 10240,
"usage": [
{
"label": "Streaming",
"amount": 2400
},
{
"label": "Maps",
"amount": 180
},
{
"label": "Social",
"amount": 850
},
{
"label": "Email",
"amount": 40
}
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "life.data_usage",
"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
Los valores de uso negativos se rechazan como invalid_input y no se facturan.
Cómo se calculan los datos restantes y el porcentaje usado
Los datos restantes, informados como remaining_mb, equivalen al límite mensual menos ese total. El redondeo queda fijo en doce decimales para campos de megabytes y cuatro decimales para porcentajes, de modo que los goldens del navegador y de la API se mantengan estables entre runtimes sin ruido de coma flotante en sumas simples.
Contrato de entrada, forma de la respuesta y errores
Cada entrada puede ser un número suelto tratado como cantidad, o un objeto con amount obligatorio y label opcional. Ejemplo: una tarifa de diez mil doscientos cuarenta megabytes con streaming a dos mil cuatrocientos, mapas a ciento ochenta, redes sociales a ochocientos cincuenta y correo a cuarenta produce tres mil cuatrocientos setenta megabytes usados y seis mil setecientos setenta megabytes restantes, cerca de un treinta y tres punto nueve por ciento usado. Las listas de más de quinientas entradas se rechazan para acotar el trabajo pure-parse. Envíe por POST un cuerpo JSON con dos campos obligatorios: limit_mb, un número finito de megabytes mayor que cero, y usage, un array no vacío de entradas de uso. Amount también acepta alias habituales como mb, value o used; el campo de lista acepta alias entries, usage_mb, amounts e items. El campo de límite acepta alias monthly_limit, limit, allowance, quota y plan_mb para que los scripts reutilicen el vocabulario de los paneles del operador. En caso de éxito el cuerpo devuelve el límite, el recuento de entradas, cada línea con etiqueta estable, cantidad redondeada y restante acumulado tras esa línea, más used_mb, remaining_mb, percent_used, percent_remaining, over_limit, overage_mb, una cadena de fórmula, un mensaje legible y pasos ordenados para hojas de trabajo. Si una lista del mismo estilo suma por encima del límite, over_limit es true y overage_mb indica cuánto se pasó del tope: sigue siendo una respuesta correcta, no un error, porque superar la tarifa es una pregunta que responde la calculadora. Límite ausente, usage vacío, números no finitos o cualquier valor de uso negativo fallan con invalid_input nombrando el campo y no se facturan. Las llamadas API correctas usan la base publicada de $0.002 por ítem.
Dónde aporta valor una calculadora de consumo de datos
Los viajeros de prepago llevan una lista corrida de sesiones de punto de acceso y videollamadas para ver los megabytes restantes antes de que una descarga en la puerta de embarque se coma el resto de un bono de itinerancia. Los padres que comparten una tarifa familiar introducen los totales de cada hijo y dejan de compartir conexión cuando el porcentaje usado cruza un umbral del hogar. Mantenga las peticiones pequeñas, fije los totales redondeados en las pruebas y obtendrá datos restantes reproducibles para listas del teléfono, plugins LMS y workers en el borde sin montar una integración con el operador. Oficinas pequeñas con SIM de trabajo limitadas envían entradas diarias a un bot que marca over_limit antes de que una tableta de campo inicie una actualización no prevista. Las unidades escolares de alfabetización digital asignan ejercicios de datos restantes; una API con restante acumulado tras cada línea permite ver qué sesión cruzó primero el tope mensual. Los scripts de automatización que programan actualizaciones de firmware o copias en la nube pueden detener un trabajo cuando remaining_mb pasaría a negativo. Como la implementación es pure parse de nivel A, cada llamada correcta cuesta el precio base publicado $0.002 sin tokens de modelo ni red saliente.
Casos de integración
Automatización de SIM laboral limitada
Los scripts envían entradas diarias de uso contra una asignación de trabajo y detienen actualizaciones o copias cuando over_limit pasa a true.
Preguntas técnicas
¿Qué ocurre si me paso del límite mensual de datos?
La llamada sigue siendo correcta. remaining_mb es negativo, over_limit es true y overage_mb indica cuánto se pasó del tope. Superar la tarifa no se trata como invalid_input.
¿Cuánto cuesta la calculadora de consumo de datos?
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.