El mercado automotor colombiano vive un momento positivo y estable. Entre enero y noviembre de 2025, el sector registró un crecimiento acumulado del 27,6%, una señal clara de recuperación y confianza por parte de los consumidores. Este comportamiento permite proyectar que la meta de 220 mil vehículos matriculados en 2025, prevista por la ANDI y FENALCO, no solo se alcanzará, sino que podría superarse más allá de las expectativas.
Uno de los factores que impulsa este buen desempeño es el Salón del Automóvil de Bogotá, un evento que tradicionalmente dinamiza las ventas y que este año aportó un volumen significativo de pedidos y negocios, muchos de ellos reflejados en los resultados que se conocerán al cierre de diciembre.
Este escenario reafirma la fortaleza del sector y su capacidad para adaptarse a las tendencias actuales de movilidad. En Seguros Bolívar le contamos más.
Participación dentro del top 10
Unidades
"; cont.appendChild(header); const barElements = []; top10.forEach((item, index) => { const fila = document.createElement("div"); fila.className = "t5-graf-row"; const colModelo = document.createElement("div"); colModelo.className = "t5-graf-modelo"; colModelo.textContent = item.rank + ". " + item.model; const colBarra = document.createElement("div"); colBarra.className = "t5-graf-bar-wrap"; const barraOuter = document.createElement("div"); barraOuter.className = "t5-bar-outer"; const barraInner = document.createElement("div"); barraInner.className = "t5-bar-inner"; const widthPercent = maxUnits ? (item.units / maxUnits * 100) : 0; barraInner.dataset.targetWidth = widthPercent.toFixed(1) + "%"; const label = document.createElement("span"); label.className = "t5-bar-label"; const percTop10 = totalTop10Units ? (item.units / totalTop10Units * 100) : 0; label.textContent = percTop10.toFixed(1).replace(".", ",") + " %"; barraOuter.appendChild(barraInner); barraOuter.appendChild(label); colBarra.appendChild(barraOuter); const colUnidades = document.createElement("div"); colUnidades.className = "t5-graf-units"; colUnidades.textContent = item.units.toLocaleString("es-CO") + " u"; fila.appendChild(colModelo); fila.appendChild(colBarra); fila.appendChild(colUnidades); cont.appendChild(fila); barElements.push({ el: barraInner, delay: index * 160 }); }); barElements.forEach(({ el, delay }) => { el.style.width = "0%"; setTimeout(() => { el.style.width = el.dataset.targetWidth || "0%"; }, delay); }); } /* ------------ 5. TABLA + VER MÁS + TOTAL ------------ */ function renderTabla(mes) { const table = document.getElementById("t5-tabla"); const tablaSub = document.getElementById("t5-tabla-sub"); const toggleBtn = document.getElementById("t5-tabla-toggle"); const toggleText = document.getElementById("t5-tabla-toggle-text"); if (!table) return; table.innerHTML = ""; const entries = mes.entries || []; const totalMes = typeof mes.totalMatriculas === "number" ? mes.totalMatriculas : entries.reduce((s, e) => s + e.units, 0); if (toggleBtn && toggleText) { toggleBtn.style.display = entries.length > 5 ? "inline-flex" : "none"; toggleBtn.dataset.expanded = "false"; toggleText.textContent = "Ver más del listado"; } const thead = document.createElement("thead"); const trHead = document.createElement("tr"); ["Posición", "Modelo", "Unidades"].forEach((h, i) => { const th = document.createElement("th"); th.textContent = h; th.style.textAlign = i === 2 ? "center" : "left"; trHead.appendChild(th); }); thead.appendChild(trHead); table.appendChild(thead); const tbody = document.createElement("tbody"); entries.forEach((item, index) => { const tr = document.createElement("tr"); if (index >= 5) { tr.classList.add("t5-row-extra"); tr.style.display = "none"; } const tdPos = document.createElement("td"); tdPos.textContent = item.rank; const tdModel = document.createElement("td"); tdModel.textContent = item.model; const tdUnits = document.createElement("td"); tdUnits.className = "t5-tabla-units"; tdUnits.textContent = item.units.toLocaleString("es-CO"); tr.appendChild(tdPos); tr.appendChild(tdModel); tr.appendChild(tdUnits); tbody.appendChild(tr); }); const trTotal = document.createElement("tr"); trTotal.className = "t5-row-total"; const tdPosTotal = document.createElement("td"); tdPosTotal.textContent = ""; const tdModelTotal = document.createElement("td"); tdModelTotal.textContent = mes.isAnnual ? "Total año*" : "Total mes"; const tdUnitsTotal = document.createElement("td"); tdUnitsTotal.className = "t5-tabla-units"; tdUnitsTotal.textContent = totalMes.toLocaleString("es-CO"); trTotal.appendChild(tdPosTotal); trTotal.appendChild(tdModelTotal); trTotal.appendChild(tdUnitsTotal); tbody.appendChild(trTotal); table.appendChild(tbody); if (toggleBtn && toggleText) { toggleBtn.onclick = function () { const expanded = this.dataset.expanded === "true"; const extraRows = table.querySelectorAll("tbody tr.t5-row-extra"); extraRows.forEach(row => { row.style.display = expanded ? "none" : ""; }); this.dataset.expanded = expanded ? "false" : "true"; toggleText.textContent = expanded ? "Ver más del listado" : "Ver menos"; }; } if (tablaSub) { if (mes.isAnnual) { tablaSub.textContent = "Top 20 anual 2025 (acumulado enero–noviembre). Fuente: FENALCO."; } else if (mes.totalMatriculas) { tablaSub.textContent = "Total matrículas " + mes.label.toLowerCase() + ": " + totalMes.toLocaleString("es-CO") + " unidades. Fuente: FENALCO."; } else { tablaSub.textContent = "Hasta los primeros 20 modelos con datos disponibles. Fuente: FENALCO."; } } } /* ------------ 6. JSON-LD (SEO) ------------ */ function injectJsonLd() { try { const monthsData = Object.keys(t5Data).map(key => { const mes = t5Data[key]; return { mesId: key, mes: mes.label, totalMatriculas: mes.totalMatriculas || null, top20: (mes.entries || []).map(e => ({ posicion: e.rank, modelo: e.model, unidades: e.units, participacionMercado: typeof e.marketShare === "number" ? e.marketShare : null })) }; }); const schema = { "@context": "https://schema.org", "@type": "Dataset", "name": "Top 20 modelos de vehículos nuevos más vendidos en Colombia 2025 por mes", "description": "Listado mensual de los 20 modelos de vehículos nuevos más matriculados en Colombia durante 2025, con unidades y participación de mercado cuando aplica.", "creator": { "@type": "Organization", "name": "FENALCO" }, "inLanguage": "es", "spatialCoverage": { "@type": "Country", "name": "Colombia" }, "temporalCoverage": "2025-01-01/2025-11-30", "distribution": [ { "@type": "DataDownload", "encodingFormat": "text/html", "contentUrl": (typeof window !== "undefined" && window.location && window.location.href) ? window.location.href : "" } ], "variableMeasured": [ { "@type": "PropertyValue", "name": "mes", "description": "Mes y año de referencia de las matrículas de vehículos." }, { "@type": "PropertyValue", "name": "modelo", "description": "Nombre comercial del modelo de vehículo." }, { "@type": "PropertyValue", "name": "unidades", "description": "Número de unidades nuevas matriculadas en el mes." }, { "@type": "PropertyValue", "name": "participacionMercado", "description": "Participación porcentual estimada del modelo en el mercado del mes (cuando está disponible)." } ], "data": monthsData, "citation": "FENALCO" }; const script = document.createElement("script"); script.type = "application/ld+json"; script.textContent = JSON.stringify(schema); document.head.appendChild(script); } catch (e) { /* silencioso */ } } /* ------------ 7. INICIALIZAR ------------ */ function initTop5Widget() { buildAnnualSummary(); initMeses(); const defaultMonth = t5Data["noviembre_2025"] ? "noviembre_2025" : monthOrder[0]; const select = document.getElementById("t5-mes-select"); if (select) { select.value = defaultMonth; } selectMes(defaultMonth); injectJsonLd(); } initTop5Widget(); })();