L

Metodología pública · v2 (mayo 2026)

Índice de Corrupción Percibida por Contrato

ICPC es un índice auditable que estima, con base en datos abiertos de SECOP II, el nivel de riesgo de irregularidades de un contrato público.

Datos consultados en tiempo real contra datos.gov.co (portal oficial de datos abiertos del Estado colombiano), sobre los datasets de SECOP I y SECOP II publicados por Colombia Compra Eficiente. El cálculo es independiente, ciudadano y reproducible.

La ecuación

ICPC = min(100, round( S_base × M_combo × M_sector × M_evidencia ))

S_base — puntaje base

Normaliza los indicadores activados contra un denominador construido a partir del peso máximo posible de críticos y graves. Valor entre 0 y ~100.

M_combo — combinaciones peligrosas

Amplifica el puntaje cuando aparecen combinaciones específicas (p. ej. "precio amañado + sin estudios previos") o varios indicadores críticos al mismo tiempo.

M_sector — sensibilidad del sector

Contratos en salud, educación, seguridad o electoral pesan más porque su impacto social es mayor.

M_evidencia — calidad de datos

Contratos con más información disponible (proponentes, adendas, documentos) se evalúan con 1.20×; los que solo tienen el contrato principal, 0.85×.

Niveles del ICPC

bajo

Sin señales de alerta significativas

0–20

medio

Algunas irregularidades detectadas

21–40

alto

Múltiples señales de alerta graves

41–65

critico

Patrón de corrupción probable

66–100

Pesos por categoría

Cada indicador pertenece a una categoría con un peso fijo. El factor de confirmación ajusta ese peso: 1.00 si el indicador se verificó con datos reales (proponentes, adendas o documentos), 0.70 si solo se infiere del contrato principal.

critico

17.5 pts

grave

12 pts

moderado

7 pts

leve

3 pts

Familias y boost por evidencia múltiple

Los indicadores se agrupan en 11 familias semánticas (estudios, urgencia, documentación, fraccionamiento, recurrencia, etc.). Si varios indicadores de la misma familia se activan, el sistema evita contar cada uno por separado: solo el de mayor peso × confirmación contribuye al ICPC. Los demás quedan como evidencia adicional visible pero con peso efectivo cero.

Cuando hay convergencia de evidencia (varios indicadores de la misma familia confirmando el mismo problema desde ángulos distintos), el campeón de la familia recibe un boost que refleja esa confianza adicional sin duplicar peso:

1 señal

×1.00

2 señales

×1.15

3 señales

×1.30

4+ señales

×1.40

Ejemplo: si en un contrato se activan tres indicadores de la familia "estudios" (sin estudios previos + objeto vago + descripción genérica), el campeón ("sin estudios previos") aporta su peso × 1.30 al numerador. Esto refleja que tres detectores independientes confirman el mismo problema. Los otros dos siguen visibles como evidencia pero no se suman.

Ventana temporal por defecto

Las búsquedas libres de Control Ciudadano se restringen por defecto a los últimos 3 años (configurable por el usuario). Esto evita que el histórico antiguo de SECOP — donde abundan contratos cerrados con datos parciales — diluya las señales de riesgo recientes. Si querés ampliar la ventana, usá los filtros del buscador con un rango personalizado.

Información empresarial del contratista

En la vista de cada contratista (Bendecidos y Afortunados) mostramos campos empresariales adicionales que el dataset SECOP II publica cuando la entidad contratante los registra. Estos campos se extraen sin requerir convenio adicional con Confecámaras.

Tipo de contratista

Persona Natural · Persona Jurídica · Consorcio · Unión Temporal. Útil para distinguir personas físicas de empresas y figuras asociativas.

Documento del representante legal

NIT/CC del rep. legal. Si cambia frecuentemente entre contratos, alimenta el flag SCE leve "rep. legal cambiante".

Tipo de documento del proveedor

NIT, CC, CE, Pasaporte. Identificación oficial.

Género del rep. legal

Estadística pública. No pesa en el SCE — no es señal de riesgo.

Datos no incluidos (requieren convenio): nombre completo del representante legal, documentos de constitución, capital social, histórico de cambios societarios, certificado de existencia y representación. Esos están en RUES (Confecámaras) y se obtendrían vía API formal o convenio inter-institucional.

Los indicadores

Actualmente se evalúan 57 indicadores distribuidos en 4 categorías.

Críticos (11)

✂️

Varios contratos pequeños que parecen uno solo partido

Cuando una entidad divide un contrato grande en varios pequeños para evitar hacer una licitación pública, eso se llama fraccionamiento y es una forma de evadir la competencia.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando el contrato analizado tiene valor adjudicado por debajo del tope de mínima cuantía (≈ $98M) y existen al menos 2 contratos adicionales del mismo proveedor con la misma entidad dentro de una ventana de ±45 días, todos también por debajo del tope. Busca patrones de división de una necesidad única en actos contractuales separados.

id: fraccionamiento_multiple · fuente: contrato · admite verificación con datos reales

👻

Empresa muy reciente que recibió un contrato grande

A veces se crean empresas con el único fin de recibir un contrato específico. Si una empresa muy reciente recibe un contrato grande, vale la pena revisar.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando el valor adjudicado supera $200.000.000 y la razón social del proveedor contiene literalmente el año vigente o el inmediatamente anterior como token. Señal indiciaria de constitución reciente; confirma con el cohort de proponentes si dispone de fecha de constitución.

id: empresa_fantasma · fuente: proponentes · admite verificación con datos reales

🏆

Un solo contratista se queda con casi todos los contratos de la entidad

Cuando un mismo proveedor concentra la mayoría de contratos de una entidad, puede haber favoritismo o ausencia real de competencia.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando la entidad registra al menos 5 contratos en el cohort observado y el proveedor del contrato analizado concentra más del 40% del valor total adjudicado por esa entidad. Mide concentración anómala del mercado cautivo de la entidad.

id: monopolio_contratista · fuente: contrato · admite verificación con datos reales

🎠

Un contratista recibe muchos contratos seguidos

Recibir varios contratos seguidos en poco tiempo puede ser señal de un esquema coordinado.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando el mismo NIT proveedor registra más de 5 contratos adjudicados por la misma entidad dentro de una ventana temporal de 60 días calendario alrededor de la fecha del contrato analizado.

id: carrusel_contratos · fuente: contrato · admite verificación con datos reales

Se adjudicó muy rápido, sin tiempo para que otros participaran

Un proceso transparente necesita tiempo para que varias empresas presenten sus propuestas. Adjudicar en menos de 3 días hábiles limita la competencia.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando el intervalo entre fecha_publicacion_proceso y fecha_adjudicacion_resolucion es inferior a 3 días hábiles (excluye sábados, domingos y festivos oficiales de Colombia). En ausencia de dataset de procesos, se infiere desde los campos de fecha del propio contrato.

id: adjudicacion_express · fuente: proponentes · admite verificación con datos reales

👯

Otro contrato tiene exactamente el mismo valor

Cuando dos contratos distintos coinciden al peso en su valor puede indicar copias o referencias no justificadas.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando existe al menos otro contrato dentro del cohort de la entidad (o de la sección presupuestal) cuyo valor_total_adjudicacion coincide al peso con el del contrato analizado, descartando duplicados del mismo id_contrato.

id: valor_duplicado_exacto · fuente: contrato · admite verificación con datos reales

🕸️

Varias empresas aparentemente distintas pertenecen a la misma persona

A veces un mismo dueño crea varias empresas para competir entre sí y ganar siempre. Eso oculta la falta real de competencia.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando el dataset rpmr-utcd muestra 3 o más razones sociales distintas que comparten NIT, representante legal, dirección o correo electrónico y participan en procesos de la misma entidad dentro de 12 meses. Evidencia de tejido empresarial conectado que simula competencia.

id: red_contratistas · fuente: proponentes · admite verificación con datos reales

🎯

La propuesta de precio coincide sospechosamente con el presupuesto

Cuando el precio ofrecido coincide casi exacto con el presupuesto oficial, puede indicar que el contratista conocía esa cifra de antemano.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando el proceso registra un único proponente habilitado y la diferencia relativa entre su propuesta económica y el presupuesto oficial publicado es inferior al 0,5%. Sugiere asimetría de información entre el oferente y la entidad.

id: precio_amanado · fuente: proponentes · admite verificación con datos reales

📑

No hay estudios que justifiquen por qué se hizo el contrato

Todo contrato público debería tener un estudio previo que explique por qué se necesita. Si no aparece, no hay justificación técnica.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando hay inventario de documentos indexados en los datasets de archivos SECOP para el proceso y ninguno clasifica como "estudio_previo" con fecha anterior a la firma del contrato. Requiere universo de documentos disponible para no generar falso positivo.

id: sin_estudios_previos · fuente: documentos · admite verificación con datos reales

💸

El contrato terminó costando más del doble de lo pactado

Las adiciones son válidas, pero cuando superan el 50% del valor original el contrato cambió sustancialmente y debió licitarse de nuevo.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando la sumatoria de adendas clasificadas como "valor" o "mixta" supera el 50% del valor_original del contrato. Indicador que bordea el límite legal del 50% admisible por Ley 80/1993 art. 40.

id: adicion_mayor_50pct · fuente: adendas · admite verificación con datos reales

🔁

Dos o más empresas se turnan para ganar contratos

Cuando varias empresas se turnan como ganadoras en una misma entidad puede haber un acuerdo que simula competencia.

Criterio ▾ 17.5 pts

Criterio técnico

Dispara cuando el cohort de procesos similares (mismo segmento UNSPSC u objeto parecido) de la misma entidad presenta adjudicaciones alternadas entre un conjunto de 2 o más proveedores recurrentes, sin participación cruzada plausible. Patrón típico de acuerdo colusorio de reparto.

id: rotacion_sospechosa · fuente: proponentes · admite verificación con datos reales

Graves (17)

🎯

Solo una empresa participó en un contrato grande

En una contratación transparente, varias empresas compiten. Si solo una se presenta a un contrato grande, vale la pena preguntar por qué.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el valor adjudicado supera $500.000.000 y el dataset de proponentes (o el campo numero_oferentes del proceso) confirma un único oferente habilitado. Señal fuerte de ausencia de concurrencia en contrato de alto impacto fiscal.

id: unico_oferente_alto_valor · fuente: proponentes · admite verificación con datos reales

🔂

Este contratista aparece demasiadas veces con la misma entidad

Varias adjudicaciones seguidas a la misma empresa pueden indicar favoritismo.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el mismo NIT proveedor acumula más de 3 contratos adjudicados por la misma entidad dentro de una ventana de 90 días calendario alrededor de la fecha del contrato analizado.

id: contratista_recurrente_extremo · fuente: contrato · admite verificación con datos reales

🚨

Esta entidad casi siempre contrata sin licitar

La contratación directa es una excepción. Si una entidad la usa en más del 80% de los casos, está evitando la competencia.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando la entidad tiene al menos 8 contratos observables y más del 80% de ellos usan modalidad "Contratación Directa". Revela patrón estructural de elusión de procesos competitivos.

id: exceso_directa_extremo · fuente: contrato · admite verificación con datos reales

🎄

Contrato grande firmado a última hora del año

Firmar contratos de alto valor al cierre del año suele ser ejecución presupuestal apresurada.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando la fecha de firma está entre el 15 y el 31 de diciembre y el valor adjudicado supera $300.000.000. Indicativo de ejecución presupuestal de cierre de vigencia fiscal.

id: contrato_diciembre_alto · fuente: contrato · inferido desde el contrato principal

El plazo para ejecutar es imposible para el monto del contrato

Un contrato de muchos cientos de millones no puede ejecutarse realistamente en pocos días.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el valor adjudicado supera $500.000.000 y el texto del objeto/descripción indica un plazo de ejecución inferior a 15 días calendario. Relación valor/tiempo incompatible con ejecución material razonable.

id: plazo_irreal_grave · fuente: contrato · inferido desde el contrato principal

🃏

El objeto del contrato es vago, no dice realmente qué se va a hacer

Frases como "apoyo a la gestión" sin detalle técnico permiten ejecutar casi cualquier cosa.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el objeto contractual contiene solo fórmulas abstractas ("apoyo a la gestión", "acompañamiento institucional", "fortalecimiento") sin aparición de verbos operativos ni sustantivos técnicos específicos que permitan acotar la prestación.

id: objeto_comodin · fuente: contrato · inferido desde el contrato principal

🗺️

Un servicio que es local lo presta una empresa de otra región

Servicios como aseo o vigilancia se suelen prestar localmente. Un proveedor de otra región puede implicar sobrecostos.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el objeto corresponde a categorías típicamente locales (aseo, vigilancia, mantenimiento, transporte escolar, alimentación) y el departamento del proveedor difiere del departamento de la entidad, con valor superior a $200.000.000.

id: proveedor_otra_region_grande · fuente: contrato · inferido desde el contrato principal

💵

Se entregó más del 70% del dinero antes de empezar

Anticipos muy altos exponen al Estado a pérdida del dinero si el contratista no cumple.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el campo valor_de_pago_adelantado del dataset jbjy-vk9h representa más del 70% del valor_total del contrato. Excede el tope legal del 50% (Ley 80/1993 art. 40) salvo causales excepcionales documentadas.

id: anticipo_70 · fuente: contrato · admite verificación con datos reales

🚫

El contrato fue cancelado

Un contrato cancelado puede indicar incumplimiento, problemas de ejecución o ajustes tardíos.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el campo estado_contrato contiene los tokens "Cancelado" o "Terminación Anticipada" (case-insensitive). Refleja ruptura contractual formal registrada en SECOP II.

id: contrato_cancelado · fuente: contrato · admite verificación con datos reales

🔓

No se ve garantía que proteja el dinero público

Las garantías protegen al Estado. Un contrato grande sin ellas deja al Estado sin respaldo.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el valor supera $100.000.000 y no existe documento clasificado como "garantia" en el inventario SECOP para el proceso (ni el texto contractual menciona póliza/garantía). Omisión de respaldo obligatorio según Decreto 1082/2015.

id: sin_garantias · fuente: documentos · admite verificación con datos reales

🎭

Un competidor se presentó con un precio imposiblemente alto

Cuando un competidor oferta un precio tan alto que no podía ganar, probablemente estaba ahí solo para simular competencia.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando al menos una propuesta económica del cohort de proponentes excede en más del 40% el presupuesto oficial del proceso. Conducta característica de oferta de cobertura destinada a aparentar concurrencia sin disputar la adjudicación.

id: proponente_artificial · fuente: proponentes · admite verificación con datos reales

🕸️

Faltan la mayoría de documentos oficiales del proceso

Si no están los estudios previos, minuta o acta de entrega, no hay cómo verificar qué pasó en el contrato.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el inventario SECOP del proceso cubre menos del 30% de la canasta mínima de documentos esperados (pliego, estudios previos, minuta, acta de inicio, garantía, acta de entrega). Requiere inventario disponible para evitar falso positivo por falta de datos.

id: opacidad_documental · fuente: documentos · admite verificación con datos reales

🗳️

Se le agregó dinero al contrato justo antes de elecciones

La ley prohíbe ciertos movimientos contractuales durante el período electoral para evitar usos políticos del presupuesto.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando una adenda tipo "valor" o "mixta" fue publicada dentro de los 90 días calendario previos a una fecha electoral registrada (presidencial, congreso, gobernaciones o alcaldías). Zona de aplicación de la Ley de Garantías (Ley 996/2005).

id: adicion_periodo_electoral · fuente: adendas · admite verificación con datos reales

Se cambió el proceso cuando casi nadie podía ya participar

Modificar las reglas a última hora deja a los competidores sin tiempo para ajustarse.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando una adenda al pliego se publica a menos de 3 días hábiles antes del cierre del plazo de presentación de ofertas. Vulnera el principio de planeación y puede constituir modificación inoponible al estándar de publicidad.

id: adenda_plazo_minimo · fuente: adendas · admite verificación con datos reales

📈

El contrato se encareció varias veces

Varias adiciones sobre un mismo contrato pueden indicar que el presupuesto inicial no era realista.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando el contrato acumula 3 o más adendas tipo "valor" o "mixta" en el dataset xvdy-vvsk. Revela una estructura de precio inicial indicativa y no firme, o sobrecostos sucesivos.

id: multiples_adiciones · fuente: adendas · admite verificación con datos reales

📉

El contrato creció en más del 20% respecto al valor inicial

Un crecimiento tan grande del contrato original puede indicar que no se planificó bien.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando la sumatoria de adendas tipo "valor" o "mixta" representa más del 20% (y hasta 50%) del valor_original. Tramo intermedio que todavía es legal pero apunta a desajuste presupuestal del diseño del proceso.

id: adicion_mayor_20pct · fuente: adendas · admite verificación con datos reales

🔄

Se cambió lo que el contrato iba a hacer

Cambiar el objeto por adenda es esencialmente un contrato nuevo, y no puede hacerse por esa vía.

Criterio ▾ 12 pts

Criterio técnico

Dispara cuando al menos una adenda tipo "objeto" o "mixta" registra un campo nuevo_objeto distinto del objeto original. Modificación que excede la competencia de la figura del otrosí y suele requerir un nuevo proceso.

id: cambio_objeto_adenda · fuente: adendas · admite verificación con datos reales

Moderados (19)

💰

Se entregó más del 40% del dinero antes de empezar

Un anticipo alto es válido pero requiere control estricto de ejecución.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el valor_de_pago_adelantado representa entre 40% y 70% del valor total del contrato. Tramo legal pero que requiere póliza de buen manejo del anticipo y control de ejecución reforzado.

id: anticipo_alto · fuente: contrato · admite verificación con datos reales

👤

No hay supervisor asignado al contrato

Sin supervisor nadie vigila el cumplimiento del contrato durante la ejecución.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el campo supervisor está vacío, nulo o contiene marcadores genéricos ("no definido", "sin asignar") y el valor del contrato supera $30.000.000. Omisión del rol de vigilancia que la Ley 1474/2011 exige durante la ejecución.

id: sin_supervisor · fuente: contrato · admite verificación con datos reales

Al contrato se le sumaron muchos días extra

Extensiones grandes de plazo sugieren planeación deficiente o cambios significativos al contrato original.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el campo dias_adicionados del contrato supera 60 días respecto al plazo original. Síntoma de fallas de planeación o reprogramación sistemática del cronograma.

id: adicion_plazo_significativa · fuente: contrato · admite verificación con datos reales

🎯

Solo una empresa participó

Menos competencia suele significar peores precios para el Estado.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el proceso es de modalidad competitiva (licitación, selección abreviada, concurso de méritos o mínima cuantía) y el dataset de proponentes, el campo numero_oferentes o el campo respuestas_al_procedimiento indican exactamente 1 oferente habilitado.

id: unico_oferente · fuente: proponentes · admite verificación con datos reales

🆕

Empresa muy reciente

No siempre es problema, pero merece revisión si el contrato es de alto valor.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando la razón social del proveedor incluye como token el año vigente o el anterior. Heurística proxy de fecha de constitución — se complementa con la revisión de RUES / proponentes cuando está disponible.

id: empresa_nueva · fuente: proponentes · admite verificación con datos reales

🚧

Muchos contratos sin licitar

La contratación directa debería ser excepción, no regla.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando la entidad registra al menos 10 contratos y más del 60% (sin superar el 80%) utilizan modalidad "Contratación Directa". Zona de sobre-uso del régimen excepcional sin llegar al umbral crítico.

id: exceso_directa · fuente: contrato · admite verificación con datos reales

🔁

Este contratista repite mucho

Puede ser competencia real o favoritismo; amerita mirar los procesos.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el mismo NIT proveedor registra más de 2 contratos con la misma entidad en una ventana de 90 días, sin llegar al umbral del indicador "extremo".

id: contratista_recurrente · fuente: contrato · admite verificación con datos reales

💰

Precio muy alto comparado con contratos parecidos

Un precio muy alejado del promedio puede indicar sobrecosto.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el valor_total del contrato supera en más del 80% el promedio del cohort de contratos comparables (mismo código UNSPSC / objeto similar / modalidad) dentro de la misma entidad o ventana temporal.

id: valor_atipico · fuente: contrato · inferido desde el contrato principal

📝

El contrato tiene modificaciones

Las modificaciones cambian el alcance original y merecen revisión.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando existen registros de adenda en xvdy-vvsk, el campo dias_adicionados es mayor a 0, o el nombre del procedimiento contiene los patrones regex "adición", "modificación al contrato" u "otrosí".

id: adicion_contrato · fuente: adendas · admite verificación con datos reales

📆

Publicado fin de semana o festivo

Publicar en días sin actividad dificulta que otros revisen y participen.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando la fecha de publicación del contrato/proceso cae en sábado, domingo o festivo oficial colombiano. Reduce la visibilidad pública del acto contractual durante su primera ventana de difusión.

id: dia_no_habil · fuente: contrato · inferido desde el contrato principal

📋

Consultoría sin producto concreto

Una consultoría debe tener entregables claros; sin ellos no hay cómo medir si cumplió.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el objeto contiene el token "consultoría" o "asesoría" y no aparecen palabras asociadas a entregables (informe, producto, estudio, diagnóstico, plan, manual, metodología) en el texto del objeto.

id: consultoria_vaga · fuente: contrato · inferido desde el contrato principal

👥

Hay otros contratos que hacen lo mismo

Pagar dos veces por lo mismo es desperdicio del dinero público.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el cohort de contratos de la entidad contiene otro contrato vigente simultáneo con objeto cuya similitud textual (Jaccard sobre tokens normalizados) supera el 70%, sugiriendo duplicación de prestación.

id: duplicidad_objetos · fuente: contrato · inferido desde el contrato principal

📅

Contrato firmado al cierre del año

Puede indicar ejecución presupuestal apresurada.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando la fecha de firma del contrato ocurre en los meses de noviembre o diciembre de la vigencia fiscal. Período típico de ejecución presupuestal acelerada para evitar liberación de apropiaciones.

id: fin_anio · fuente: contrato · inferido desde el contrato principal

Plazo muy corto para lo que cuesta el contrato

Plazos irreales suelen ocultar subcontratos o ejecución precaria.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el valor supera $50.000.000 y el texto del objeto/descripción indica un plazo de ejecución menor a 30 días calendario. Relación valor/tiempo que suele camuflar subcontratación o facturación sin ejecución real.

id: plazo_corto · fuente: contrato · inferido desde el contrato principal

⏱️

La mayoría de propuestas llegaron al último minuto

Participar al filo puede indicar coordinación entre proponentes.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando más del 50% de las propuestas del proceso fueron radicadas dentro de las últimas 2 horas antes del cierre del plazo. Posible evidencia de coordinación estratégica entre oferentes.

id: proponentes_ultimo_minuto · fuente: proponentes · admite verificación con datos reales

🚫

No hay registro de cuándo empezó el contrato

Sin acta de inicio no sabemos cuándo realmente se empezó a ejecutar.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando transcurrieron más de 15 días desde la fecha_inicio del contrato y no existe documento clasificado como "acta_inicio" en el inventario SECOP del proceso. Omisión que impide fijar el punto cero contractual para efectos de supervisión.

id: sin_acta_inicio · fuente: documentos · admite verificación con datos reales

🏛️

Esta entidad apenas empieza a contratar formalmente

Entidades recién iniciando pueden tener procesos aún sin controles maduros.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando la entidad contratante registra menos de 3 contratos previos en el dataset jbjy-vk9h. Señal de capacidad contractual incipiente; solo se evalúa si el cohort de la entidad está disponible para evitar falso positivo por falta de datos.

id: entidad_sin_historial · fuente: contrato · inferido desde el contrato principal

📋

Texto del contrato es casi idéntico a otro reciente

Contratos idénticos en texto pueden indicar un formato copiado sin análisis real.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el objeto del contrato supera el 85% de similitud textual (Jaccard sobre n-gramas) con otro contrato reciente de la misma entidad. Indica uso de plantillas sin análisis de necesidades específicas.

id: objeto_copiado · fuente: contrato · inferido desde el contrato principal

📔

No hay informes de seguimiento al contrato

La supervisión debería dejar rastro. Sin actas no sabemos si alguien está vigilando.

Criterio ▾ 7 pts

Criterio técnico

Dispara cuando el contrato acumula más de 6 meses desde su fecha de inicio, hay inventario de documentos SECOP disponible, y ninguno clasifica como "acta_supervision". Ausencia del rastro documental que impone la función de vigilancia contractual.

id: sin_acta_supervision · fuente: documentos · admite verificación con datos reales

Leves (10)

📍

El contratista es de otra región

No es irregular por sí solo, pero merece mirar si era lo más eficiente.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando el departamento registrado del proveedor (en proceso o en contrato) difiere del departamento de la entidad contratante. Por sí solo no es anomalía, pero ajusta el score cuando concurre con otros indicadores.

id: proveedor_otra_region · fuente: contrato · inferido desde el contrato principal

🌫️

Descripción genérica del contrato

Un objeto claro ayuda a vigilar qué se contrató.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando el objeto contiene fórmulas genéricas ("apoyo a la gestión", "acompañamiento", "asesoría en", "apoyo logístico", "fortalecimiento institucional") sin acompañarse de verbos o sustantivos técnicos específicos del sector.

id: objeto_generico · fuente: contrato · inferido desde el contrato principal

🔇

Nadie vio el proceso publicado

La poca difusión limita la competencia.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando el campo visualizaciones_del_procedimiento del dataset de procesos (p6dx-8zbt) registra exactamente 0. Solo se evalúa cuando el dato está explícitamente disponible (ausencia ≠ cero).

id: sin_publicidad · fuente: contrato · inferido desde el contrato principal

🌙

Publicado en horario atípico

Publicar de madrugada reduce la visibilidad.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando la hora (UTC-5, Bogotá) de publicación del contrato/proceso es inferior a 06:00 o mayor o igual a 22:00. Reduce la probabilidad de lectura pública en la ventana natural de consulta.

id: hora_inusual · fuente: contrato · inferido desde el contrato principal

⚠️

Valor justo al filo del tope para no licitar

Puede indicar un ajuste para evitar un proceso más exigente.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando el valor adjudicado está entre $88.000.000 y $97.999.999, es decir, justo por debajo del umbral legal de mínima cuantía para entidades con presupuesto medio. Patrón de bunching típico ante umbrales administrativos.

id: valor_limite_modalidad · fuente: contrato · inferido desde el contrato principal

📆

Contrato cruza el cierre del año

Dificulta el control presupuestal por vigencia.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando la fecha_inicio y la fecha_finalizacion estimada del contrato pertenecen a años fiscales distintos. Requiere autorización de vigencias futuras en la mayoría de casos (Decreto 111/1996).

id: multiples_vigencias · fuente: contrato · inferido desde el contrato principal

📏

La descripción tiene muy poca información

Una descripción corta oculta detalles relevantes del contrato.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando el campo descripci_n_del_procedimiento (o fallback al nombre del procedimiento) tiene entre 1 y 49 caracteres de contenido. Insuficiencia informativa que dificulta la publicidad sustantiva del acto.

id: descripcion_corta · fuente: contrato · inferido desde el contrato principal

📑

Una licitación publicó pocos documentos

Una licitación grande suele requerir varios documentos de soporte.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando la modalidad contiene "Licitación" y el inventario SECOP del proceso registra menos de 5 documentos indexados. Valor esperado de una licitación pública completa excede ampliamente ese número.

id: pocos_documentos_licitacion · fuente: documentos · admite verificación con datos reales

🛡️

No hay pólizas publicadas

Sin garantía documentada no hay respaldo ante incumplimientos.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando hay inventario de documentos SECOP para el proceso y ninguno clasifica como "garantia". Complementa el flag crítico "sin_garantias" para contratos por debajo del umbral de $100M.

id: sin_garantias_documentadas · fuente: documentos · admite verificación con datos reales

📥

El contrato terminó sin acta de entrega

Sin acta de entrega no queda constancia de lo que finalmente se recibió.

Criterio ▾ 3 pts

Criterio técnico

Dispara cuando el plazo estimado de ejecución del contrato ya venció (fecha_inicio + plazo original) y no hay documento clasificado como "acta_entrega" en el inventario SECOP. Omisión del acto formal de cierre contractual.

id: acta_entrega_ausente · fuente: documentos · admite verificación con datos reales

Parte II — Perfil empresarial

Score Contratista Empresarial (SCE)

El SCE mide el patrón de comportamiento de una empresa a lo largo del tiempo, no de un contrato individual. Evalúa 21 flags empresariales con lógica análoga al ICPC y utiliza los mismos datasets abiertos de SECOP II.

SCE = min(100, round( S_base × M_combo × M_volumen × M_evidencia ))

M_volumen

Ajusta según cantidad de contratos observados en la ventana (36 meses). Empresas con menos de 3 contratos se ponderan hacia abajo (0.85×); las que acumulan grandes volúmenes, hacia arriba (1.20×).

Ventana temporal

El SCE se recalcula sobre los últimos 36 meses de contratos registrados en SECOP II para el NIT analizado. Datos más antiguos no entran al score pero sí al histórico visual.

Niveles del SCE

bajo

Sin señales empresariales significativas

0–20

medio

Merece seguimiento — algunas señales

21–40

alto

Múltiples alertas empresariales

41–65

critico

Patrón sistemático de concentración y alta exposición presupuestal

66–100

Pesos por categoría (SCE)

critico

21 pts

grave

14.5 pts

moderado

8 pts

leve

3.5 pts

Los 21 flags empresariales

Cada flag es una condición técnica específica sobre el historial de contratos del NIT. Expandir un flag muestra el criterio técnico exacto que define si suma o no.

Críticos (5)

Tiene varios contratos con alertas graves

Un contratista con múltiples contratos críticos muestra un patrón sistemático, no un caso aislado.

Criterio ▾ 25 pts

Criterio técnico

Cuenta de contratos del NIT con ICPC ≥ 70 (nivel crítico) es mayor o igual a 3.

id: emp_multiples_criticos

Empresa muy reciente que ya recibió contratos millonarios

Una empresa creada hace poco y que acumula contratos grandes puede indicar que fue creada para capturar esos contratos específicos.

Criterio ▾ 22 pts

Criterio técnico

El nombre del contratista contiene el año actual o el anterior como cifra (patrón habitual en empresas recién constituidas) Y el valor total contratado en 36 meses supera los $500.000.000. NO se aplica a Consorcios ni Uniones Temporales (por construcción son recientes).

id: emp_nueva_grande

En promedio sus contratos tienen muchas alertas

No solo uno que otro: casi todos sus contratos tienen varias señales de alerta.

Criterio ▾ 20 pts

Criterio técnico

El promedio aritmético del ICPC de todos sus contratos (ventana 36 meses) es mayor o igual a 40 puntos.

id: emp_score_alto

Le adjudican contratos casi idénticos una y otra vez

Si una misma entidad le firma tres veces el mismo objeto, probablemente no hubo competencia real.

Criterio ▾ 20 pts

Criterio técnico

En al menos una entidad, existen 3 o más contratos cuyos objetos textuales tienen similitud >75% (similar_text de PHP) con al menos otro del mismo grupo.

id: emp_repite_objeto

Cuando hay licitación, casi siempre es el único que se presenta

En procesos que deberían tener competencia abierta (licitaciones), ser siempre el único oferente sugiere captura del proceso.

Criterio ▾ 17 pts

Criterio técnico

Entre sus contratos de modalidad competitiva (Licitación, Selección Abreviada, Concurso de Méritos), más del 70% corresponden a procesos donde fue el único proponente según el dataset p6dx-8zbt. Requiere mínimo 3 procesos competitivos.

id: emp_oferente_unico_recurrente

Graves (11)

Casi todo el dinero que mueve viene de una sola entidad

Un contratista saludable trabaja con varias entidades. Si depende casi exclusivamente de una, puede haber captura.

Criterio ▾ 18 pts

Criterio técnico

Requiere mínimo 5 contratos en la ventana. Se suma el valor_del_contrato por nit_entidad, y la entidad con mayor suma concentra más del 70% del valor total contratado por el NIT.

id: emp_concentracion_entidad

De un año a otro pasó a contratar el triple o más

Un salto tan abrupto sugiere que algo cambió bruscamente: acceso privilegiado, coyuntura electoral, captura de cargos.

Criterio ▾ 18 pts

Criterio técnico

La suma de valor_del_contrato del año actual es ≥ 3 veces la del año anterior. Requiere que existan contratos en el año anterior (divisor > 0).

id: emp_crecimiento_subito

Casi todo lo gana por modalidades sin competencia

Las contrataciones directas y de mínima cuantía no exigen competencia — si el 80% del histórico cae allí, hay patrón.

Criterio ▾ 16 pts

Criterio técnico

Requiere mínimo 3 contratos. Más del 80% de sus contratos tienen modalidad que contiene "directa" o "mínima" (case-insensitive).

id: emp_sin_competencia

En poco tiempo apareció en varias entidades distintas

Un contratista que en 6 meses logra contratar con 5+ entidades diferentes tiene acceso atípico.

Criterio ▾ 15 pts

Criterio técnico

En los últimos 6 meses (180 días desde hoy), el NIT firmó contratos con 5 o más nit_entidad distintos.

id: emp_muchas_entidades_rapido

Nueve de cada diez contratos son por contratación directa

La contratación directa debe ser excepción. Si es regla de este contratista, está evitando sistemáticamente la competencia.

Criterio ▾ 15 pts

Criterio técnico

Requiere mínimo 3 contratos. Más del 90% de sus contratos tienen modalidad que contiene "directa".

id: emp_solo_directa

Se especializa en sectores de alto impacto social

Salud, educación, seguridad y electoral son áreas donde el daño de un mal contrato es mayor. Concentrarse ahí merece más atención.

Criterio ▾ 13 pts

Criterio técnico

Más del 50% del número de contratos tienen objeto que coincide con regex sectorial (salud|hospital|cl[ií]nic|educaci|colegio|escuela|seguridad|polic[ií]a|ej[eé]rcito|elecci|electoral).

id: emp_sector_sensible

Muchos de sus contratos terminan cancelados

Un contratista serio cumple. Si más de uno de cada cinco de sus contratos termina cancelado, hay problemas de ejecución.

Criterio ▾ 12 pts

Criterio técnico

Requiere mínimo 5 contratos. Más del 20% de sus contratos tienen estado_contrato que contiene "cancel" o "termin anticip" (case-insensitive).

id: emp_contratos_cancelados

La misma entidad le adjudica año tras año

Un patrón de recontratación anual con la misma entidad sugiere una relación institucionalizada por fuera de la competencia.

Criterio ▾ 11 pts

Criterio técnico

Existe al menos un nit_entidad con el que firmó contratos en 3 o más años distintos dentro de los últimos 4 años (basado en year(fecha_firma)).

id: emp_retorno_ciclico

Consorcio formado para un contrato y sin histórico

Cuando un consorcio o unión temporal tiene un único contrato en su histórico y ningún otro, suele haberse armado específicamente para capturar ese contrato.

Criterio ▾ 13 pts

Criterio técnico

Contratista es Consorcio/UT (campo `tipo_de_contratista` de SECOP II o, en su defecto, heurística por nombre) Y total de contratos en 36 meses = 1.

id: emp_consorcio_contrato_unico

Consorcio que siempre contrata con la misma entidad

Un consorcio saludable es coyuntural; si repite 3+ veces con la misma entidad puede tratarse de un vehículo de captura.

Criterio ▾ 14 pts

Criterio técnico

Contratista es Consorcio/UT (campo `tipo_de_contratista` de SECOP II o, en su defecto, heurística por nombre) Y una sola entidad concentra ≥3 contratos del histórico.

id: emp_consorcio_alta_concentracion

Consorcio con contratos muy grandes y pocos registros

Consorcios/UT que mueven cifras grandes con apenas uno o dos contratos merecen revisión: pueden ser estructuras ad-hoc sin trayectoria comprobable.

Criterio ▾ 12 pts

Criterio técnico

Contratista es Consorcio/UT (campo `tipo_de_contratista` de SECOP II o, en su defecto, heurística por nombre) Y valor total ≥ $500M Y total contratos ≤ 2.

id: emp_consorcio_valor_grande

Moderados (6)

Más de la mitad de sus contratos se firman en noviembre o diciembre

Los contratos de fin de año suelen ser ejecución presupuestal apresurada — si es el patrón dominante, hay riesgo de contratos mal planeados.

Criterio ▾ 10 pts

Criterio técnico

Requiere mínimo 4 contratos. Más del 50% de sus contratos tienen fecha_de_firma en los meses 11 o 12 de cualquier año.

id: emp_patron_dic

Le entregan más de la mitad del dinero antes de ejecutar

Los anticipos altos exponen el dinero público al incumplimiento. Si es un patrón, la entidad contratante está asumiendo demasiado riesgo con este contratista.

Criterio ▾ 9 pts

Criterio técnico

Requiere mínimo 3 contratos con valor_del_contrato > 0. Más del 50% de esos contratos tienen valor_de_pago_adelantado / valor_del_contrato > 0.50.

id: emp_anticipo_recurrente

Sus contratos suelen alargarse mucho tiempo

Adiciones de plazo frecuentes pueden indicar planeación deficiente, ejecución irregular, o un mecanismo para mantener la relación contractual más tiempo.

Criterio ▾ 8 pts

Criterio técnico

El promedio de dias_adicionados entre todos sus contratos es mayor a 30 días.

id: emp_adiciones_sistematicas

En promedio maneja contratos muy grandes

Los contratos grandes tienen más impacto fiscal y deberían tener competencia. Promedios muy altos en contratistas con poca competencia amplifican el riesgo.

Criterio ▾ 8 pts

Criterio técnico

El promedio aritmético de valor_del_contrato de todos sus contratos es ≥ $300.000.000.

id: emp_valor_alto

Opera en muchas zonas del país

Una huella geográfica amplia puede indicar empresa sólida — o un esquema de captura replicado en varias regiones. Merece revisión contextual.

Criterio ▾ 7 pts

Criterio técnico

El conteo distinto de departamento (campo departamento del contrato) en su histórico es ≥ 5.

id: emp_expansion_geo

Muchos de sus contratos tienen objetos muy vagos

Frases como "apoyo a la gestión" sin detalle técnico permiten ejecutar casi cualquier cosa. Si es un patrón, dificulta la vigilancia.

Criterio ▾ 6 pts

Criterio técnico

Más del 40% de sus contratos tienen objeto que coincide con regex (apoyo a la gesti[oó]n|asesor[ií]a en|acompa[nñ]amiento|apoyo log[ií]stico|fortalecimiento institucional).

id: emp_objeto_generico

Leves (3)

El representante legal cambia mucho entre contratos

Cuando el representante legal cambia con frecuencia, puede haber inestabilidad societaria o reorganizaciones para evadir control. Es una señal débil — puede ser rotación normal — pero combinada con otras alertas refuerza el riesgo.

Criterio ▾ 3 pts

Criterio técnico

Requiere ≥6 contratos con `nit_del_representante_legal` registrado. El representante legal más frecuente aparece en menos del 50% de esos contratos (alta dispersión).

id: emp_rep_legal_cambiante

Varios contratos justo por debajo del tope de mínima cuantía

Firmar contratos entre $88M y $98M con frecuencia sugiere un ajuste para evadir la modalidad de licitación pública que aplicaría sobre $98M.

Criterio ▾ 4 pts

Criterio técnico

Más del 30% de sus contratos tienen valor_del_contrato entre $88.000.000 y $98.000.000 (zona gris de mínima cuantía).

id: emp_valor_minimo_cuantia

El primer contrato que tuvo es el mayor de su historial

Empresas serias crecen gradualmente. Empezar directamente con el contrato más grande sugiere que la empresa pudo haber sido creada para ese contrato específico.

Criterio ▾ 3 pts

Criterio técnico

Requiere mínimo 3 contratos. El contrato con la fecha_de_firma más antigua coincide con el contrato de mayor valor_del_contrato del histórico.

id: emp_primer_contrato_grande

Limitaciones del índice

  • El ICPC es una estimación de riesgo, no una declaración de culpabilidad ni una denuncia. Un contrato con ICPC alto puede ser perfectamente legal.
  • Los datos provienen de SECOP II. Si una entidad publica incompleto, el índice verá una muestra incompleta.
  • Algunos indicadores se infieren del contrato principal cuando no hay información adicional disponible. Esto se marca como "inferido" (factor 0.70) frente a "confirmado" (1.00).
  • Los multiplicadores por combinación y sector reflejan patrones observados, no juicios sobre un contrato individual.
  • El índice no conoce el contexto ni las razones específicas detrás de cada contrato. Por eso la veeduría ciudadana es clave: un ICPC alto es una invitación a mirar con más cuidado, no una conclusión.

Cómo citar

Liga de Gobernantes Anticorrupción (2026). Índice de Corrupción Percibida por Contrato (ICPC) y Score Contratista Empresarial (SCE). soyliga.org/control/metodologia

Metodología desarrollada por Liga de Gobernantes Anticorrupción — datos abiertos SECOP II (datos.gov.co).

Únete al movimiento

Sé parte de la Liga

Para necesitas una cuenta en la Liga de Gobernantes Anticorrupción. Es gratis y toma menos de un minuto.

Al unirte podrás

  • Apoyar publicaciones, comentar y compartir
  • Crear tus propias denuncias y propuestas
  • Sumarte a una red nacional anticorrupción
Crear mi cuenta gratis Ya tengo cuenta · Iniciar sesión