diff --git a/webui/static/discover.js b/webui/static/discover.js
index e3b0960e..1872ea5d 100644
--- a/webui/static/discover.js
+++ b/webui/static/discover.js
@@ -5754,12 +5754,18 @@ function _artMapShowTooltip(e, node) {
const genres = (node.genres || []).slice(0, 3);
const genreHTML = genres.length ? `
${genres.map(g => `${escapeHtml(g)}`).join('')}
` : '';
const typeLabel = node.type === 'watchlist' ? '★ Watchlist' : '';
+ // Real connection count from the map's edges (cheap; only on hover change).
+ let conn = 0;
+ const edges = _artMap.edges || [];
+ for (const ed of edges) { if (ed.source === node.id || ed.target === node.id) conn++; }
+ const connHTML = conn ? `${conn} connection${conn === 1 ? '' : 's'}
` : '';
tip.innerHTML = `
${img}
${escapeHtml(node.name)}
${typeLabel}
+ ${connHTML}
${genreHTML}
diff --git a/webui/static/style.css b/webui/static/style.css
index 5ffeaa8b..f5b13454 100644
--- a/webui/static/style.css
+++ b/webui/static/style.css
@@ -34299,6 +34299,7 @@ div.artist-hero-badge {
.artmap-tip-info { min-width: 0; }
.artmap-tip-name { font-size: 13px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.artmap-tip-badge { display: inline-block; font-size: 9px; font-weight: 700; color: #fbbf24; margin-top: 2px; }
+.artmap-tip-conn { font-size: 10px; font-weight: 600; color: rgba(138,43,226,0.85); margin-top: 3px; }
.artmap-tip-genres { display: flex; gap: 4px; flex-wrap: wrap; margin-top: 4px; }
.artmap-tip-genres span {
font-size: 9px; padding: 2px 6px; border-radius: 4px;