Анализ сайта nhlnumbers.com
Основное Готовность: 75%
Домен
nhlnumbers.com
Состояние доменного имени
?
Проверяем корректность доменного имени и наличие технических проблем на уровне домена.
Домен второго уровня идеален для продвижения.
Отличный запоминающийся домен.
Ответ сервера
200 Успешный ответ
HTTP-код ответа и цепочка редиректов
?
Код 200 — страница доступна. Коды 3xx — редиректы (цепочки замедляют загрузку и размывают ссылочный вес). Коды 4xx/5xx — ошибки, поисковик не сможет проиндексировать страницу.
Сервер настроен корректно.
Цепочка редиректов:
http://nhlnumbers.com
301 MovedPermanently
https://puckpedia.com/
200 OK
Безопасность
Сайт безопасен
Использование HTTPS и SSL-сертификат
?
HTTPS — обязательный стандарт. Google и Яндекс отдают предпочтение защищённым сайтам. Отсутствие SSL или просроченный сертификат ведут к предупреждениям в браузере и снижению позиций.
Не настроен HSTS (Strict-Transport-Security) — рекомендуется включить.
На сайте работает защищенный протокол ssl и сайт открывается по https.
Ssl-сертификат действителен до 09.01.2027 2:59:59.
HTTP автоматически перенаправляется на HTTPS.
Поздравляем! Сайт не содержится в реестре РКН.
Кодировка
utf-8
Кодировка символов страницы
?
Стандарт — UTF-8. Неправильная кодировка вызывает нечитаемые символы и мешает поисковику корректно распознать текст страницы.
Указана кодировка на странице utf-8.
Язык
en
Атрибут lang в HTML-теге
?
Атрибут lang (<html lang="ru">) сообщает поисковикам и браузерам, на каком языке написана страница. Помогает при ранжировании в региональном поиске.
Язык документа указан явно: en.
Скорость загрузки
~0,81сек
Время отклика сервера (TTFB)
?
Time To First Byte — время до получения первого байта от сервера. Норма до 200 мс. Медленный отклик ухудшает пользовательский опыт и ранжирование: Яндекс и Google учитывают скорость страниц.
Скорость загрузки сайта 0,81сек оптимальна.
Объем документа
385Кб
Размер HTML-кода страницы
?
Слишком большой HTML замедляет парсинг браузером и сканирование поисковым роботом. Рекомендуется не более 200 Кб.
Объем html-документа 385Кб оптимален.
Структура html-документа корректна.
Ресурсы
Ресурсы: 24
Внешние ресурсы страницы (CSS, JS, изображения)
?
Количество и тип подключённых ресурсов влияют на скорость загрузки. Большое число запросов увеличивает время рендеринга страницы.
Кол-во файлов ресурсов 24 много для одной страницы. Приемлемо до 10. Проведите оптимизацию файлов ресурсов!
Показать полный список ресурсов
| Тип | Название | Значение |
|---|---|---|
| stylesheet | /themes/custom/puck_tw/assets/kit-75c16ce5d6/icons/css/all.min.css | |
| stylesheet | /sites/default/files/css/css_J22bRh9s4yHC_sDzhPqfxqDdHb0928F2wMLq8EHSAv4.css?delta=0&language=en&theme=puck_tw&include=eJw9iVEOwyAMxS5Ey5GqFJ6qbKGJCBnq7aftgx9blot25NrDSHaKoUWbCQaSRXkfY2YS4xsvP0zi4tvX-NlQmbZL9CRZwycb-srBZk_yxwdaPsmRPozp-c-9aQ3BF_wJNOI | |
| stylesheet | /themes/custom/puck_tw/js/alpine/flatpickr.min.css?tk4y73 | |
| stylesheet | /sites/default/files/css/css_UseMSeqmo7_tWDNuutUUyt-0C8f69zfnDtdhKwnsuks.css?delta=2&language=en&theme=puck_tw&include=eJw9iVEOwyAMxS5Ey5GqFJ6qbKGJCBnq7aftgx9blot25NrDSHaKoUWbCQaSRXkfY2YS4xsvP0zi4tvX-NlQmbZL9CRZwycb-srBZk_yxwdaPsmRPozp-c-9aQ3BF_wJNOI | |
| stylesheet | https://use.typekit.net/tkn0vab.css | |
| stylesheet | /sites/default/files/css/css_O9UKRofFoffWWbFtk6RZuCY6Wnd18fN4o6cGCUQVe1A.css?delta=4&language=en&theme=puck_tw&include=eJw9iVEOwyAMxS5Ey5GqFJ6qbKGJCBnq7aftgx9blot25NrDSHaKoUWbCQaSRXkfY2YS4xsvP0zi4tvX-NlQmbZL9CRZwycb-srBZk_yxwdaPsmRPozp-c-9aQ3BF_wJNOI | |
| js | /sites/default/files/js/js_6r7LWo80NOvrV_vnZRZ6yfztx5RmTxJJN9PYgAXWsrI.js?scope=header&delta=0&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA | |
| js | /modules/contrib/google_tag/js/gtag.js?tk4y73 | |
| js | /sites/default/files/js/js_TbD7UXopMsg2c0dm-mMwma74yfgsGv3JnEkbjXlS700.js?scope=header&delta=2&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA | |
| js | https://cdn.tpdads.com/configs/puckpedia.js | |
| js | https://securepubads.g.doubleclick.net/tag/js/gpt.js | |
| js | https://helpers.publisherdesk.com/main.js | |
| js | /sites/default/files/js/js_BmFruOcfwMSKVjRA9vcQFfuRuRimG7WpAgdu9yMQ0-c.js?scope=footer&delta=0&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA | |
| js | https://cdn.jsdelivr.net/npm/@alpinejs/collapse@3.14.1/dist/cdn.min.js | |
| js | https://cdn.jsdelivr.net/npm/@alpinejs/focus@3.14.1/dist/cdn.min.js | |
| js | https://cdn.jsdelivr.net/npm/@alpinejs/mask@3.14.1/dist/cdn.min.js | |
| js | https://cdn.jsdelivr.net/npm/@alpinejs/persist@3.14.1/dist/cdn.min.js | |
| js | /themes/custom/puck_tw/js/alpine/alpine-tooltip.min.js?tk4y73 | |
| js | /themes/custom/puck_tw/js/alpine/flatpickr.min.js?tk4y73 | |
| js | /modules/custom/puckdata/js/puckFilters.js?tk4y73 | |
| js | /themes/custom/puck_tw/js/alpine/tab_panels.js?tk4y73 | |
| js | https://cdn.jsdelivr.net/npm/alpinejs@3.14.1/dist/cdn.min.js | |
| js | /sites/default/files/js/js_cALgdqkr2C-n4ZLdy7GGU2wqY0TPeULlnuA57td-qx8.js?scope=footer&delta=10&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA | |
| js | module | https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496 |
Серверные заголовки
Кол-во: 12
HTTP-заголовки ответа сервера
?
Заголовки сервера передают браузеру и поисковику служебную информацию: кеширование, безопасность (CSP, HSTS), сжатие (gzip). Правильная настройка ускоряет загрузку и повышает защищённость.
Найдены серверные заголовки 12шт. Подробнее про серверные заголовки.
Показать полный список серверных заголовков
| Ключ | Значение |
|---|---|
| Date | Sat, 22 Aug 2026 13:42:31 GMT |
| Server | cloudflare |
| X-Powered-By | PHP/8.2.29 |
| Cache-Control | public, max-age=3600 |
| x-drupal-dynamic-cache | HIT |
| X-Content-Type-Options | nosniff |
| Vary | Cookie |
| x-generator | Drupal 10 (https://www.drupal.org) |
| Access-Control-Allow-Origin | * |
| cf-cache-status | HIT |
| Server-Timing | cfCacheStatus;desc="HIT" |
| cf-ray | a2f24d1f3dadf13d-DME |
CMS
Система управления сайтом (движок)
?
CMS — это движок, на котором работает сайт (WordPress, 1C-Bitrix, Tilda и др.). Знание CMS помогает понять возможности SEO-оптимизации и подобрать подходящие инструменты. «Не определена» — вероятно, самописный сайт или нестандартная сборка.
Сайт работает на CMS Drupal.
Веб-сервер
Программное обеспечение сервера
?
Веб-сервер — это ПО, которое отдаёт страницы посетителям (nginx, Apache, IIS, LiteSpeed и др.). Определяется по серверным заголовкам ответа (Server, X-Powered-By и т.п.). «Не определён» — сервер намеренно скрывает эти заголовки, это нормальная практика безопасности.
Сайт работает на веб-сервере Cloudflare.
Мета-теги Готовность: 17%
Title
NHL Salary Cap, Player Contracts and Salary Cap Analysis | Puckpedia
Заголовок страницы в браузере и поисковой выдаче
?
Title — главный SEO-заголовок страницы. Влияет на CTR в поиске и ранжирование. Оптимальная длина: 50–70 символов. Ключевые слова — ближе к началу.
Устраните дубли в title: salary(2)
Необходимо уменьшить число символов в title (текущее значение: 68, оптимально: от 40 до 45)
Description
Explore PuckPedia for the latest NHL salary cap info, player contracts, team cap hits, transactions and injury news - the ultimate source for hockey fans and professionals.
Описание страницы в поисковой выдаче (сниппет)
?
Meta Description — текст под заголовком в выдаче. Напрямую на позиции не влияет, но влияет на CTR. Оптимальная длина: 120–160 символов.
Необходимо уменьшить число символов в description (текущее значение: 172, оптимально: от 120 до 130)
Keywords
Список ключевых слов страницы (устаревший тег)
?
Meta Keywords не учитывается Яндексом и Google для ранжирования с 2009–2012 годов. Заполнение не обязательно, но не вредит. Конкурент может использовать содержимое для анализа.
Установите мета-тег keywords!
Канонический Url
https://puckpedia.com
Указывает поисковику основную версию страницы
?
Canonical (rel=canonical) предотвращает проблему дублей страниц. Должен точно совпадать с URL проверяемой страницы. Неправильный canonical может передать ссылочный вес на другую страницу.
Канонический Url прописан корректно.
Robots
Есть ошибки
Директивы для поисковых роботов на уровне страницы
?
Meta Robots управляет индексацией конкретной страницы: index/noindex — индексировать ли, follow/nofollow — следовать ли по ссылкам. Noindex полностью исключает страницу из поиска.
Meta-тег robots указан, но в нем содержится неизвестное значение...
Адаптивность
width=device-width, initial-scale=1.0
Настройка масштабирования на мобильных устройствах
?
Тег viewport (<meta name="viewport">) сообщает браузеру, как масштабировать страницу на мобильных. Стандарт: width=device-width, initial-scale=1. Отсутствие — признак отсутствия мобильной версии.
Meta-тег viewport со значением-константой width=device-width задаёт ширину страницы в соответствии с размером экрана.
Meta-тег viewport со значением initial-scale=1.0 определяет масштаб 1:1, т.е. «не масштабировать».
Разметка OpenGraph
Не найдено
Мета-теги для красивых превью в соцсетях
?
OpenGraph (og:title, og:description, og:image) управляет тем, как страница выглядит при репосте в социальных сетях и мессенджерах. Отсутствие OG-тегов — невзрачный превью при шеринге.
Разметка OpenGraph не задана. Страница не оптимизирована под социальные сети. Мета-теги с разметкой Og помогают социальным роботам лучше структурировать Ваш сайт.
Все мета-теги
Кол-во: 10
Полный список мета-тегов страницы
?
Таблица всех meta-тегов, включая нестандартные. Позволяет найти опечатки, дубли и лишние теги.
Найдены мета-теги 10шт. Мета-теги не видимы для человека и предназначены для обмена информацией между веб-страницей и поисковыми системами, браузерами и другими веб-службами. С ними роботы 🤖 и устройства ведут себя более ожидаемо.
Показать полный список мета-тегов
| Тип | Название | Значение |
|---|---|---|
| name | robots | max-image-preview:large, max-snippet:-1, max-video-preview:-1 |
| name | Generator | Drupal 10 (https://www.drupal.org) |
| name | MobileOptimized | width |
| name | HandheldFriendly | true |
| name | viewport | width=device-width, initial-scale=1.0 |
| name | description | Explore PuckPedia for the latest NHL salary cap info, player contracts, team cap hits, transactions and injury news - the ultimate source for hockey fans and professionals. |
| name | msapplication-TileColor | #ffc40d |
| name | msapplication-config | /themes/custom/puck_tw/browserconfig.xml |
| name | theme-color | #001b33 |
| name | google-site-verification | PxFoLnWkjf4K749KawA23Xvt6gzFmvBaHf-pIArmm94 |
Оптимизация Готовность: 97%
Структура
Ошибок нет
Семантические HTML-элементы страницы
?
Проверяет наличие основных структурных элементов: nav, header, footer, main. Корректная семантическая структура помогает поисковику понять архитектуру страницы.
Структура документа корректна (теги <html> и <body> присутствуют в единственном экземпляре).
Контент
Есть ошибки
Объём и качество текстового содержимого
?
Анализирует объём полезного текста на странице. Слишком мало — страница может считаться малополезной. Слишком много — ухудшается читаемость и восприятие.
Абзацев с текстом 3 слишком мало. Добавьте больше абзацев с текстом (тег <p>)!
Слова из title 9 встречаются в тексте достаточно.
Среднее число слов в абзаце 48 достаточно.
Кол-во знаков контента 16854 на странице оптимально.
Кол-во слов 2764 на странице оптимально.
Заголовки
Ошибок нет
Иерархия заголовков H1–H6
?
H1 должен быть один и содержать ключевой запрос. H2–H6 описывают подразделы. Пропуск уровней (H1 → H3) и несколько H1 — типичные ошибки, снижающие понятность страницы для поисковика.
На странице присутствуют заголовки <h1> 1. Это прекрасно.
На странице присутствуют заголовки <h2> 2. Это хорошо.
На странице присутствуют заголовки <h3> 23.
Тошнота
4,69
Насколько одно слово доминирует в тексте
?
Классическая тошнота = √(частота самого повторяющегося слова). Норма до 7–8: текст воспринимается естественно. Выше — поисковик может счесть страницу переспамленной.
Тошнота страницы в пределах нормы 4,69.
Академич. тошнота
6,11%
Насколько текст перенасыщен ключевыми словами
?
Академическая тошнота = (частота слова / общее количество слов) × 100%. Показывает долю конкретного слова в тексте. Норма 5–15%.
Академическая тошнота страницы в пределах нормы.
Семантическое ядро
20
Наиболее часто встречающиеся слова на странице
?
Топ слов по частоте использования. Показывает, какие слова доминируют в тексте с точки зрения поисковика.
Контент страницы содержит осмысленный текст и слова.
Показать список слов
| Слово | Кол-во | Частота |
|---|---|---|
| data-content=" | 22 | 0,80% |
| player | 20 | 0,72% |
| puckpedia | 15 | 0,54% |
| salary | 14 | 0,51% |
| signing | 14 | 0,51% |
| tracker | 13 | 0,47% |
| profile | 12 | 0,43% |
| calculator | 10 | 0,36% |
| standard | 10 | 0,36% |
| details | 10 | 0,36% |
| comments | 10 | 0,36% |
| players | 9 | 0,33% |
| lucius | 9 | 0,33% |
| contracts | 8 | 0,29% |
| agents | 8 | 0,29% |
| sports | 8 | 0,29% |
| @puckpedia | 8 | 0,29% |
| trades | 7 | 0,25% |
| signed | 7 | 0,25% |
| advertisement | 7 | 0,25% |
Индексация Готовность: 0%
Индексирование
Есть ошибки
Разрешено ли индексирование страницы
?
Проверяет, не закрыта ли страница от индексации через robots.txt, meta robots или X-Robots-Tag. Страница, закрытая от индексации, не появится в поисковой выдаче.
Анкоров на странице 435 слишком много. Проведите ревизию и оптимизацию ссылок сайта.
Robots.txt
Найден корректный robots.txt
Файл управления сканированием сайта роботами
?
Robots.txt указывает поисковым роботам, какие страницы сканировать, а какие — нет. Ошибки в файле могут случайно закрыть важные разделы от индексации.
Robots.txt настроен корректно. Размер файла: 394859 байт. Загружен за: 1сек.
Проверяемая страница не запрещена в robots.txt.
Robots.txt доступен по постоянному адресу
Цепочка редиректов для файла robots.txt:
http://nhlnumbers.com/robots.txt
301 MovedPermanently
https://puckpedia.com/
200 OK
Показать содержимое robots.txt
<!DOCTYPE html>
<html lang="en" dir="ltr" prefix="og: https://ogp.me/ns#">
<head>
<meta charset="utf-8" />
<noscript><style>form.antibot * :not(.antibot-message) { display: none !important; }</style>
</noscript><link rel="canonical" href="https://puckpedia.com" />
<link rel="shortlink" href="https://puckpedia.com/" />
<meta name="robots" content="max-image-preview:large, max-snippet:-1, max-video-preview:-1" />
<meta name="Generator" content="Drupal 10 (https://www.drupal.org)" />
<meta name="MobileOptimized" content="width" />
<meta name="HandheldFriendly" content="true" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="Explore PuckPedia for the latest NHL salary cap info, player contracts, team cap hits, transactions and injury news - the ultimate source for hockey fans and professionals." />
<link rel="icon" href="/themes/custom/puck_tw/favicon.ico" type="image/vnd.microsoft.icon" />
<title>NHL Salary Cap, Player Contracts and Salary Cap Analysis | Puckpedia</title>
<style>[x-cloak] { display: none!important }</style>
<link rel="apple-touch-icon" sizes="180x180" href="/themes/custom/puck_tw/apple-touch-icon.png">
<link rel="manifest" href="/themes/custom/puck_tw/site.webmanifest">
<link rel="mask-icon" href="/themes/custom/puck_tw/safari-pinned-tab.svg" color="#5bbad5">
<link rel="shortcut icon" href="/themes/custom/puck_tw/favicon.ico">
<meta name="msapplication-TileColor" content="#ffc40d">
<meta name="msapplication-config" content="/themes/custom/puck_tw/browserconfig.xml">
<meta name="theme-color" content="#001b33">
<link rel="icon" type="image/png" sizes="32x32" href="/themes/custom/puck_tw/favicon-32x32.png" media="(prefers-color-scheme: light)">
<link rel="icon" type="image/png" sizes="16x16" href="/themes/custom/puck_tw/favicon-16x16.png" media="(prefers-color-scheme: light)">
<link rel="icon" type="image/png" sizes="32x32" href="/themes/custom/puck_tw/darkmode-favicon-32x32.png" media="(prefers-color-scheme: dark)">
<link rel="icon" type="image/png" sizes="16x16" href="/themes/custom/puck_tw/darkmode-favicon-16x16.png" media="(prefers-color-scheme: dark)">
<link rel="stylesheet" href="/themes/custom/puck_tw/assets/kit-75c16ce5d6/icons/css/all.min.css" crossorigin="anonymous">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preconnect" href="https://cdn.puckpedia.com">
<meta name="google-site-verification" content="PxFoLnWkjf4K749KawA23Xvt6gzFmvBaHf-pIArmm94" />
<link rel="stylesheet" media="all" href="/sites/default/files/css/css_J22bRh9s4yHC_sDzhPqfxqDdHb0928F2wMLq8EHSAv4.css?delta=0&language=en&theme=puck_tw&include=eJw9iVEOwyAMxS5Ey5GqFJ6qbKGJCBnq7aftgx9blot25NrDSHaKoUWbCQaSRXkfY2YS4xsvP0zi4tvX-NlQmbZL9CRZwycb-srBZk_yxwdaPsmRPozp-c-9aQ3BF_wJNOI" />
<link rel="stylesheet" media="all" href="/themes/custom/puck_tw/js/alpine/flatpickr.min.css?tk4y73" />
<link rel="stylesheet" media="all" href="/sites/default/files/css/css_UseMSeqmo7_tWDNuutUUyt-0C8f69zfnDtdhKwnsuks.css?delta=2&language=en&theme=puck_tw&include=eJw9iVEOwyAMxS5Ey5GqFJ6qbKGJCBnq7aftgx9blot25NrDSHaKoUWbCQaSRXkfY2YS4xsvP0zi4tvX-NlQmbZL9CRZwycb-srBZk_yxwdaPsmRPozp-c-9aQ3BF_wJNOI" />
<link rel="stylesheet" media="all" href="https://use.typekit.net/tkn0vab.css" />
<link rel="stylesheet" media="all" href="/sites/default/files/css/css_O9UKRofFoffWWbFtk6RZuCY6Wnd18fN4o6cGCUQVe1A.css?delta=4&language=en&theme=puck_tw&include=eJw9iVEOwyAMxS5Ey5GqFJ6qbKGJCBnq7aftgx9blot25NrDSHaKoUWbCQaSRXkfY2YS4xsvP0zi4tvX-NlQmbZL9CRZwycb-srBZk_yxwdaPsmRPozp-c-9aQ3BF_wJNOI" />
<script type="application/json" data-drupal-selector="drupal-settings-json">{"path":{"baseUrl":"\/","pathPrefix":"","currentPath":"home","currentPathIsAdmin":false,"isFront":true,"currentLanguage":"en"},"pluralDelimiter":"\u0003","suppressDeprecationErrors":true,"ajaxPageState":{"libraries":"eJxdj-EOgzAIhF-o2kcytJBaxUFKO-fbz7ikc_tzcB8kl4tSyGNpCjxCqxJlU6ZKLokkpqlC8umUfz_CAi-nLa5T3T2w5gct1sEsdYHSreoAOAWWuP6we2DnLXC2mQqS3b7PqYQZhsQSgPvB9qz0TapZ9bgcgs1BoKDvm7PDKm0-gJF7ZtrNX_opcwebYGN6A_r5bx4","theme":"puck_tw","theme_token":null},"ajaxTrustedUrl":{"form_action_p_pvdeGsVG5zNF_XLGPTvYSKCf43t8qZYSwcfZl2uzM":true},"gtag":{"tagId":"G-3XZKV8G6GT","consentMode":false,"otherIds":[],"events":[],"additionalConfigInfo":{"roles":"anonymous"}},"views":{"ajax_path":"\/views\/ajax","ajaxViews":{"views_dom_id:e766773dce184b8f9b67b2bb3cbc5be47b79a8eb3f8612be79f03dd88a052d1e":{"view_name":"capology_questions","view_display_id":"popular","view_args":"","view_path":"\/home","view_base_path":null,"view_dom_id":"e766773dce184b8f9b67b2bb3cbc5be47b79a8eb3f8612be79f03dd88a052d1e","pager_element":0},"views_dom_id:735dc6d65f708b6ab611627135a4c0d30d29da837b7df4f7031a3e58446efff0":{"view_name":"capology_questions","view_display_id":"latest","view_args":"","view_path":"\/home","view_base_path":null,"view_dom_id":"735dc6d65f708b6ab611627135a4c0d30d29da837b7df4f7031a3e58446efff0","pager_element":0}}},"puckSwiper":{"_tweets_block":{"swiper_el":".tweets-swiper","slideToIndex":null,"slidesPerView":"1.25","breakpoints":{"700":{"slidesPerView":"2.25"},"900":{"slidesPerView":"2.25"},"1040":{"slidesPerView":"3.25"}},"pagination":{"el":".tweets-swiper-pagination","dynamicBullets":true},"navigation":{"nextEl":".tweets-swiper-button-next","prevEl":".tweets-swiper-button-prev"}}},"user":{"uid":0,"permissionsHash":"1690a10fb08b4e37de203ab7551ff657b2f71b7228d86743fa297c34bbfd1009"}}</script>
<script src="/sites/default/files/js/js_6r7LWo80NOvrV_vnZRZ6yfztx5RmTxJJN9PYgAXWsrI.js?scope=header&delta=0&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA"></script>
<script src="/modules/contrib/google_tag/js/gtag.js?tk4y73"></script>
<script src="/sites/default/files/js/js_TbD7UXopMsg2c0dm-mMwma74yfgsGv3JnEkbjXlS700.js?scope=header&delta=2&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA"></script>
<script src="https://cdn.tpdads.com/configs/puckpedia.js" async></script>
<script src="https://securepubads.g.doubleclick.net/tag/js/gpt.js" async></script>
<script src="https://helpers.publisherdesk.com/main.js" async></script>
<script>
// high up avoid flicker
(function() {
var savedTheme = window.localStorage.getItem('theme');
var prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
if (savedTheme === 'dark' || (savedTheme === null && prefersDark)) {
document.documentElement.classList.add('dark');
} else {
document.documentElement.classList.remove('dark');
}
})();
</script>
</head>
<body>
<div class="pp_basewrap">
<div class="min-h-full"> <div id="navbar" class="pp_navwrap">
<div>
<div id="top-placement" class="pplus bg-pp-brand_blue overflow-hidden flex justify-center transition-all duration-300 h-[58px] md:h-[98px]">
<div id="dsk-banner-ad-h" class="mt-2 font-bold hidden sm:flex justify-center items-center h-[50px] md:h-[90px]">
</div>
<div id="mob-banner-ad-h" class="mt-2 font-bold flex sm:hidden justify-center items-center h-[50px] md:h-[90px]">
</div>
</div>
<script>
/**
* Top Ad Unit Behavior
*
* This script controls the visibility of the top ad unit based on scroll position.
* - Hides ad when user scrolls down past MAX_SCROLL_POSITION
* - Once collapsed, the ad stays collapsed for the rest of the session
* (we never re-show it, and the scroll listener is removed)
* - Adds sticky behavior to the subnav while ad is visible
*/
document.addEventListener('DOMContentLoaded', function() {
// Configuration
const MAX_SCROLL_POSITION = 550; // Hide ad when scrolled past this position
const INITIAL_SCROLL_THRESHOLD = 250; // Minimum scroll distance before hiding ad
const DEBOUNCE_MS = 10; // Debounce time in milliseconds
// State and elements
let isPlacementOpen = true;
const initialScrollPosition = window.scrollY;
const topPlacement = document.querySelector("#top-placement");
// Every sticky subnav must follow the ad, not just the page's own #subnav:
// the pinned draft bar (#draft-pin) reuses .pp_subnav and stacks above it.
const subnavs = document.querySelectorAll(".pp_subnav");
let debounceTimeout = null;
if(!topPlacement) {
return;
}
// Initialize subnav state
subnavs.forEach((el) => el.classList.add('pp_top_nav_ad_sticky'));
// Debounce function (similar to the one in your tippy.js)
function debounce(fn, ms) {
return function() {
clearTimeout(debounceTimeout);
debounceTimeout = setTimeout(() => {
fn();
}, ms);
};
}
// Collapse the ad permanently once the user scrolls down far enough.
function updateAdVisibility() {
if (!isPlacementOpen) {
return;
}
const scrollPosition = window.scrollY;
const hasScrolledPastThreshold = Math.abs(scrollPosition - initialScrollPosition) > INITIAL_SCROLL_THRESHOLD;
if (scrollPosition > MAX_SCROLL_POSITION && hasScrolledPastThreshold) {
requestAnimationFrame(() => {
topPlacement.style.height = 0;
subnavs.forEach((el) => el.classList.remove('pp_top_nav_ad_sticky'));
});
isPlacementOpen = false;
// Stop listening once collapsed so iOS/Safari rubber-band overscroll
// (which can report a negative scrollY) can never re-show the ad.
window.removeEventListener('scroll', debouncedScrollHandler);
}
}
// Create debounced scroll handler
const debouncedScrollHandler = debounce(updateAdVisibility, DEBOUNCE_MS);
// Attach scroll listener with passive flag for better performance
window.addEventListener('scroll', debouncedScrollHandler, { passive: true });
});
</script>
</div>
<div id="pp_overlay" data-js="mainOverlay" class="hidden"></div>
<div id="pp_overlay_transparent" data-js="mainOverlay" class="hidden"></div>
<div>
<header class="bg-pp-brand_blue font-sans">
<div class="mx-auto pp_innerwrap lg:px-[8px] xl:px-2">
<div class="relative flex h-[64px] lg:h-[70px] items-center justify-between">
<div class="flex items-center"> <div class="flex-shrink-0 ml-4 lg:ml-0">
<a title="PuckPedia" href="/">
<img loading="lazy" class="h-[28px] xl:h-[36px]" src="https://cdn.puckpedia.com/s/assets/puckpedia_alt.svg" alt="PuckPedia logo." /></a>
</div>
<div class="hidden xl:ml-3 xl:block">
<nav role="navigation" aria-labelledby="block-mainnavigation-menu" id="block-mainnavigation">
<h2 class="visually-hidden" id="block-mainnavigation-menu">Main navigation</h2>
<div class="hidden lg:block">
<div class="flex items-baseline xl:space-x-0.5 text-sm2 uppercase tracking-widest font-semibold">
<div class="relative inline-block whitespace-nowrap">
<a href='#' data-flytrigger="main1" class='group text-white hover:text-blue-400 hover:underline decoration-2 underline-offset-4 px-2.5 py-2'>Teams
<i class="fad fa-caret-down ml-[1px] transition-transform duration-200 group-[.on]:rotate-180 group-[.on]:[--fa-secondary-opacity:1]"></i></a>
<div data-fly="main1" class="pp_navdropwrap Teams" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<div>
<div class="py-1 md:py-2">
<div class="grid grid-cols-1 sm:grid-cols-2 gap-1.5 px-3 mb-2">
<a href="/teams" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<img class="h-7 w-7 flex-none" loading="lazy" src="https://cdn.puckpedia.com/s/assets/logos/nhl_knockout-sm@2.png" alt="NHL Logo" />
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">All Teams</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Comparison View</span>
</span>
</a>
<a href="/gms" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<i class="fas fa-user-tie !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">GM Tracker</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Stats & History</span>
</span>
</a>
</div>
<hr class="border-slate-700 mx-3 mb-1" />
<div class="flex flex-wrap mt-3 mx-2 gap-4 sm:gap-8 divide-x divide-slate-700">
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Pacific</div>
<a href="/team/anaheim-ducks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/25-sm@2.webp" alt="Anaheim Ducks" /><span>Anaheim</span>
</a>
<a href="/team/calgary-flames"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/18-sm@2.webp" alt="Calgary Flames" /><span>Calgary</span>
</a>
<a href="/team/edmonton-oilers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/24-sm@2.webp" alt="Edmonton Oilers" /><span>Edmonton</span>
</a>
<a href="/team/los-angeles-kings"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/23-sm@2.webp" alt="Los Angeles Kings" /><span>Los Angeles</span>
</a>
<a href="/team/san-jose-sharks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/21-sm@2.webp" alt="San Jose Sharks" /><span>San Jose</span>
</a>
<a href="/team/seattle-kraken"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/271-sm@2.webp" alt="Seattle Kraken" /><span>Seattle</span>
</a>
<a href="/team/vancouver-canucks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/26-sm@2.webp" alt="Vancouver Canucks" /><span>Vancouver</span>
</a>
<a href="/team/vegas-golden-knights"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/269-sm@2.webp" alt="Vegas Golden Knights" /><span>Vegas</span>
</a>
</div>
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Central</div>
<a href="/team/chicago-blackhawks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/22-sm@2.webp" alt="Chicago Blackhawks" /><span>Chicago</span>
</a>
<a href="/team/colorado-avalanche"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/1-sm@2.webp" alt="Colorado Avalanche" /><span>Colorado</span>
</a>
<a href="/team/dallas-stars"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/20-sm@2.webp" alt="Dallas Stars" /><span>Dallas</span>
</a>
<a href="/team/minnesota-wild"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/29-sm@2.webp" alt="Minnesota Wild" /><span>Minnesota</span>
</a>
<a href="/team/nashville-predators"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/27-sm@2.webp" alt="Nashville Predators" /><span>Nashville</span>
</a>
<a href="/team/st-louis-blues"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/16-sm@2.webp" alt="St. Louis Blues" /><span>St. Louis</span>
</a>
<a href="/team/utah-mammoth"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/19-sm@2.webp" alt="Utah Mammoth" /><span>Utah</span>
</a>
<a href="/team/winnipeg-jets"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/28-sm@2.webp" alt="Winnipeg Jets" /><span>Winnipeg</span>
</a>
</div>
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Metropolitan</div>
<a href="/team/carolina-hurricanes"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/5-sm@2.webp" alt="Carolina Hurricanes" /><span>Carolina</span>
</a>
<a href="/team/columbus-blue-jackets"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/30-sm@2.webp" alt="Columbus Blue Jackets" /><span>Columbus</span>
</a>
<a href="/team/new-jersey-devils"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/13-sm@2.webp" alt="New Jersey Devils" /><span>New Jersey</span>
</a>
<a href="/team/new-york-islanders"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/4-sm@2.webp" alt="New York Islanders" /><span>New York</span>
</a>
<a href="/team/new-york-rangers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/6-sm@2.webp" alt="New York Rangers" /><span>New York</span>
</a>
<a href="/team/philadelphia-flyers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/12-sm@2.webp" alt="Philadelphia Flyers" /><span>Philadelphia</span>
</a>
<a href="/team/pittsburgh-penguins"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/7-sm@2.webp" alt="Pittsburgh Penguins" /><span>Pittsburgh</span>
</a>
<a href="/team/washington-capitals"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/15-sm@2.webp" alt="Washington Capitals" /><span>Washington</span>
</a>
</div>
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Atlantic</div>
<a href="/team/boston-bruins"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/3-sm@2.webp" alt="Boston Bruins" /><span>Boston</span>
</a>
<a href="/team/buffalo-sabres"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/10-sm@2.webp" alt="Buffalo Sabres" /><span>Buffalo</span>
</a>
<a href="/team/detroit-red-wings"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/2-sm@2.webp" alt="Detroit Red Wings" /><span>Detroit</span>
</a>
<a href="/team/florida-panthers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/14-sm@2.webp" alt="Florida Panthers" /><span>Florida</span>
</a>
<a href="/team/montreal-canadiens"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/11-sm@2.webp" alt="Montreal Canadiens" /><span>Montreal</span>
</a>
<a href="/team/ottawa-senators"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/9-sm@2.webp" alt="Ottawa Senators" /><span>Ottawa</span>
</a>
<a href="/team/tampa-bay-lightning"> <img class="mr-[5px] h-[26px] w-[26px] pp_logo-tbl-force-dark" loading="lazy" src="https://static.puckpedia.com/logos/17-sm@2.webp" alt="Tampa Bay Lightning" /><span>Tampa Bay</span>
</a>
<a href="/team/toronto-maple-leafs"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/8-sm@2.webp" alt="Toronto Maple Leafs" /><span>Toronto</span>
</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='#' data-flytrigger="main2" class='group text-white hover:text-blue-400 hover:underline decoration-2 underline-offset-4 px-2.5 py-2'>Players
<i class="fad fa-caret-down ml-[1px] transition-transform duration-200 group-[.on]:rotate-180 group-[.on]:[--fa-secondary-opacity:1]"></i></a>
<div data-fly="main2" class="pp_navdropwrap Players" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<div>
<div class="py-1 md:py-2 whitespace-normal">
<div class="grid grid-cols-1 sm:grid-cols-2 gap-1.5 px-3 mb-2">
<a href="/players" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<i class="fa fa-chart-simple !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Player Dashboard</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Filter by stats & contracts</span>
</span>
</a>
<a href="https://comparables.puckpedia.com" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<i class="fa fa-file-contract !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Contract Comparables</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Find similar contracts</span>
</span>
</a>
</div>
<hr class="border-slate-700 mx-3 mb-4" />
<div class="grid grid-cols-[minmax(0,1fr)_0.25rem_minmax(0,1fr)] lg:px-4">
<div class="flex flex-col mr-2 lg:mr-8">
<div class="text-sm2 font-bold text-white mb-1 sm:mb-2 pl-2.5">Calculators</div>
<a href="/buyout-calculator">Buyout Calculator</a>
<a href="/deferred">Deferred Salary Calculator</a>
<a href="/pickvalue">Pick Value Calculator</a>
<a href="/tax-calculator">Tax Calculator</a>
</div>
<div class="border-l border-slate-700"></div>
<div class="flex flex-col lg:ml-4">
<div class="text-sm2 font-bold text-white mb-1 sm:mb-2 pl-2.5">Trackers</div>
<a href="/entry-level-slides">Entry Level Slide Tracker</a>
<a href="/group6">Group 6 UFA Tracker</a>
<a href="/waivers-tracker">Waivers Tracker</a>
<a href="/offer-sheet-tracker">Offer Sheet Tracker</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='/lineups' class='text-white hover:text-blue-300 hover:underline decoration-2 underline-offset-4 px-2.5 py-2' >Lineups
</a>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='#' data-flytrigger="main4" class='group text-white hover:text-blue-400 hover:underline decoration-2 underline-offset-4 px-2.5 py-2'>Scouting
<i class="fad fa-caret-down ml-[1px] transition-transform duration-200 group-[.on]:rotate-180 group-[.on]:[--fa-secondary-opacity:1]"></i></a>
<div data-fly="main4" class="pp_navdropwrap Scouting" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<a href="/scouting-reports/landing" role="menuitem" tabindex="-1" id="menu-item-0">Scouting Lists</a>
<a href="/scouting-reports/videos" role="menuitem" tabindex="-1" id="menu-item-0">Video Vault</a>
</div>
</div>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='/agents' class='text-white hover:text-blue-300 hover:underline decoration-2 underline-offset-4 px-2.5 py-2' >Agents
</a>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='/draft' class='text-white hover:text-blue-300 hover:underline decoration-2 underline-offset-4 px-2.5 py-2' >Draft
</a>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='/salary-cap' class='text-white hover:text-blue-300 hover:underline decoration-2 underline-offset-4 px-2.5 py-2' >Capology
</a>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='#' data-flytrigger="main8" class='group text-white hover:text-blue-400 hover:underline decoration-2 underline-offset-4 px-2.5 py-2'>News
<i class="fad fa-caret-down ml-[1px] transition-transform duration-200 group-[.on]:rotate-180 group-[.on]:[--fa-secondary-opacity:1]"></i></a>
<div data-fly="main8" class="pp_navdropwrap News" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<a href="/news" role="menuitem" tabindex="-1" id="menu-item-0">News & Analysis</a>
<a href="/signings" role="menuitem" tabindex="-1" id="menu-item-0">Signings</a>
<a href="/trades" role="menuitem" tabindex="-1" id="menu-item-0">Trades</a>
<a href="/injuries" role="menuitem" tabindex="-1" id="menu-item-0">Injuries</a>
<a href="/transactions" role="menuitem" tabindex="-1" id="menu-item-0">Transactions</a>
<a href="/waiver-wire" role="menuitem" tabindex="-1" id="menu-item-0">Waiver Wire</a>
<a href="https://puckpedia.com/puckpedia-hockey-show" role="menuitem" tabindex="-1" id="menu-item-0">Podcast</a>
</div>
</div>
</div>
<div class="relative inline-block whitespace-nowrap">
<a href='https://puckgm.puckpedia.com' class='text-white hover:text-blue-300 hover:underline decoration-2 underline-offset-4 px-2.5 py-2' ><span class="logotype_gm">Puck<span>GM</span></span>
</a>
</div>
</div>
</div>
</nav>
</div>
</div>
<div class="flex items-center gap-2">
<button data-modal_target="modal_search" name="search" class="order-3 xl:order-none pp_modaltrigger flex justify-center items-center p-3 text-slate-400 hover:text-white transition-colors duration-200">
<svg class="h-4 w-4 xl:h-5 xl:w-5" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
<circle cx="11" cy="11" r="8"></circle>
<path d="m21 21-4.3-4.3"></path>
</svg>
</button>
<a href="/sso-login" onclick="onNavigateSsoLogin(event)" class="order-2 xl:order-none flex items-center whitespace-nowrap text-sm uppercase tracking-widest font-semibold text-white hover:text-blue-400 hover:underline decoration-2 underline-offset-4 px-2.5 py-2" id="user-menu-button" translate="no">
Log in
</a>
<a href="/puckpedia-plus?ref=navbar_signup" class="order-1 xl:order-none flex items-center whitespace-nowrap rounded-md bg-slate-700 py-2.5 px-2 xl:px-3 uppercase tracking-widest font-semibold text-sm text-white hover:brightness-110 active:scale-95 transition-colors duration-200 lg:mr-2" id="user-menu-button" translate="no">
Sign Up
</a>
<div class="order-4 flex mr-2 xl:hidden"> <button type="button" id="hamburger" class="inline-flex items-center justify-center rounded-md p-2 text-slate-400 hover:bg-slate-700 hover:text-white focus:outline-none focus:ring-2 focus:ring-inset focus:ring-white" aria-controls="mobile-menu" aria-expanded="false">
<span class="sr-only">Open main menu</span>
<svg class="block h-6 w-6" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round" d="M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5" />
</svg>
<svg class="hidden h-6 w-6" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true">
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
</svg>
</button>
</div>
</div>
</div>
</div>
<div class="hidden" id="mobile-menu"> <div class="pp_nav_mobile_wrapper">
<nav role="navigation" aria-labelledby="block-mobilenavigation-menu" id="block-mobilenavigation">
<h2 class="visually-hidden" id="block-mobilenavigation-menu">Mobile Navigation</h2>
<div class="space-y-1 px-2 z-1000 text-[11px] uppercase tracking-widest font-semibold">
<div class="grid grid-cols-1">
<div class="relative whitespace-nowrap">
<a href='#' data-flytrigger="main1" class='inline-block text-slate-300 hover:text-white rounded-md pl-[8px] pr-[6px] py-1.5 my-1'>Teams
<i class="fad fa-caret-down ml-[1px]"></i></a>
<div data-fly="main1" class="pp_navdropwrap Teams" style="width:90vw;max-width:700px;" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<div>
<div class="py-1 md:py-2">
<div class="grid grid-cols-1 sm:grid-cols-2 gap-1.5 px-3 mb-2">
<a href="/teams" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<img class="h-7 w-7 flex-none" loading="lazy" src="https://cdn.puckpedia.com/s/assets/logos/nhl_knockout-sm@2.png" alt="NHL Logo" />
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">All Teams</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Comparison View</span>
</span>
</a>
<a href="/gms" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<i class="fas fa-user-tie !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">GM Tracker</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Stats & History</span>
</span>
</a>
</div>
<hr class="border-slate-700 mx-3 mb-1" />
<div class="flex flex-wrap mt-3 mx-2 gap-4 sm:gap-8 divide-x divide-slate-700">
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Pacific</div>
<a href="/team/anaheim-ducks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/25-sm@2.webp" alt="Anaheim Ducks" /><span>Anaheim</span>
</a>
<a href="/team/calgary-flames"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/18-sm@2.webp" alt="Calgary Flames" /><span>Calgary</span>
</a>
<a href="/team/edmonton-oilers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/24-sm@2.webp" alt="Edmonton Oilers" /><span>Edmonton</span>
</a>
<a href="/team/los-angeles-kings"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/23-sm@2.webp" alt="Los Angeles Kings" /><span>Los Angeles</span>
</a>
<a href="/team/san-jose-sharks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/21-sm@2.webp" alt="San Jose Sharks" /><span>San Jose</span>
</a>
<a href="/team/seattle-kraken"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/271-sm@2.webp" alt="Seattle Kraken" /><span>Seattle</span>
</a>
<a href="/team/vancouver-canucks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/26-sm@2.webp" alt="Vancouver Canucks" /><span>Vancouver</span>
</a>
<a href="/team/vegas-golden-knights"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/269-sm@2.webp" alt="Vegas Golden Knights" /><span>Vegas</span>
</a>
</div>
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Central</div>
<a href="/team/chicago-blackhawks"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/22-sm@2.webp" alt="Chicago Blackhawks" /><span>Chicago</span>
</a>
<a href="/team/colorado-avalanche"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/1-sm@2.webp" alt="Colorado Avalanche" /><span>Colorado</span>
</a>
<a href="/team/dallas-stars"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/20-sm@2.webp" alt="Dallas Stars" /><span>Dallas</span>
</a>
<a href="/team/minnesota-wild"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/29-sm@2.webp" alt="Minnesota Wild" /><span>Minnesota</span>
</a>
<a href="/team/nashville-predators"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/27-sm@2.webp" alt="Nashville Predators" /><span>Nashville</span>
</a>
<a href="/team/st-louis-blues"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/16-sm@2.webp" alt="St. Louis Blues" /><span>St. Louis</span>
</a>
<a href="/team/utah-mammoth"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/19-sm@2.webp" alt="Utah Mammoth" /><span>Utah</span>
</a>
<a href="/team/winnipeg-jets"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/28-sm@2.webp" alt="Winnipeg Jets" /><span>Winnipeg</span>
</a>
</div>
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Metropolitan</div>
<a href="/team/carolina-hurricanes"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/5-sm@2.webp" alt="Carolina Hurricanes" /><span>Carolina</span>
</a>
<a href="/team/columbus-blue-jackets"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/30-sm@2.webp" alt="Columbus Blue Jackets" /><span>Columbus</span>
</a>
<a href="/team/new-jersey-devils"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/13-sm@2.webp" alt="New Jersey Devils" /><span>New Jersey</span>
</a>
<a href="/team/new-york-islanders"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/4-sm@2.webp" alt="New York Islanders" /><span>New York</span>
</a>
<a href="/team/new-york-rangers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/6-sm@2.webp" alt="New York Rangers" /><span>New York</span>
</a>
<a href="/team/philadelphia-flyers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/12-sm@2.webp" alt="Philadelphia Flyers" /><span>Philadelphia</span>
</a>
<a href="/team/pittsburgh-penguins"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/7-sm@2.webp" alt="Pittsburgh Penguins" /><span>Pittsburgh</span>
</a>
<a href="/team/washington-capitals"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/15-sm@2.webp" alt="Washington Capitals" /><span>Washington</span>
</a>
</div>
<div class="flex flex-col px-1.5 min-w-[140px]">
<div class="text-sm font-bold text-white mb-[3px] sm:mb-2 pl-1">Atlantic</div>
<a href="/team/boston-bruins"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/3-sm@2.webp" alt="Boston Bruins" /><span>Boston</span>
</a>
<a href="/team/buffalo-sabres"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/10-sm@2.webp" alt="Buffalo Sabres" /><span>Buffalo</span>
</a>
<a href="/team/detroit-red-wings"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/2-sm@2.webp" alt="Detroit Red Wings" /><span>Detroit</span>
</a>
<a href="/team/florida-panthers"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/14-sm@2.webp" alt="Florida Panthers" /><span>Florida</span>
</a>
<a href="/team/montreal-canadiens"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/11-sm@2.webp" alt="Montreal Canadiens" /><span>Montreal</span>
</a>
<a href="/team/ottawa-senators"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/9-sm@2.webp" alt="Ottawa Senators" /><span>Ottawa</span>
</a>
<a href="/team/tampa-bay-lightning"> <img class="mr-[5px] h-[26px] w-[26px] pp_logo-tbl-force-dark" loading="lazy" src="https://static.puckpedia.com/logos/17-sm@2.webp" alt="Tampa Bay Lightning" /><span>Tampa Bay</span>
</a>
<a href="/team/toronto-maple-leafs"> <img class="mr-[5px] h-[26px] w-[26px] " loading="lazy" src="https://static.puckpedia.com/logos/8-sm@2.webp" alt="Toronto Maple Leafs" /><span>Toronto</span>
</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="relative whitespace-nowrap">
<a href='#' data-flytrigger="main2" class='inline-block text-slate-300 hover:text-white rounded-md pl-[8px] pr-[6px] py-1.5 my-1'>Players
<i class="fad fa-caret-down ml-[1px]"></i></a>
<div data-fly="main2" class="pp_navdropwrap Players" style="width:90vw;max-width:700px;" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<div>
<div class="py-1 md:py-2 whitespace-normal">
<div class="grid grid-cols-1 sm:grid-cols-2 gap-1.5 px-3 mb-2">
<a href="/players" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<i class="fa fa-chart-simple !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Player Dashboard</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Filter by stats & contracts</span>
</span>
</a>
<a href="https://comparables.puckpedia.com" class="!py-2.5 !px-3 gap-3 !text-sm !text-white">
<i class="fa fa-file-contract !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Contract Comparables</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Find similar contracts</span>
</span>
</a>
</div>
<hr class="border-slate-700 mx-3 mb-4" />
<div class="grid grid-cols-[minmax(0,1fr)_0.25rem_minmax(0,1fr)] lg:px-4">
<div class="flex flex-col mr-2 lg:mr-8">
<div class="text-sm2 font-bold text-white mb-1 sm:mb-2 pl-2.5">Calculators</div>
<a href="/buyout-calculator">Buyout Calculator</a>
<a href="/deferred">Deferred Salary Calculator</a>
<a href="/pickvalue">Pick Value Calculator</a>
<a href="/tax-calculator">Tax Calculator</a>
</div>
<div class="border-l border-slate-700"></div>
<div class="flex flex-col lg:ml-4">
<div class="text-sm2 font-bold text-white mb-1 sm:mb-2 pl-2.5">Trackers</div>
<a href="/entry-level-slides">Entry Level Slide Tracker</a>
<a href="/group6">Group 6 UFA Tracker</a>
<a href="/waivers-tracker">Waivers Tracker</a>
<a href="/offer-sheet-tracker">Offer Sheet Tracker</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="relative whitespace-nowrap">
<a href='/lineups' class='inline-block text-slate-300 hover:text-white rounded-md px-[10px] py-1.5 my-1' >Lineups
</a>
</div>
<div class="relative whitespace-nowrap">
<a href='#' data-flytrigger="main4" class='inline-block text-slate-300 hover:text-white rounded-md pl-[8px] pr-[6px] py-1.5 my-1'>Scouting
<i class="fad fa-caret-down ml-[1px]"></i></a>
<div data-fly="main4" class="pp_navdropwrap Scouting" style="width:90vw;max-width:700px;" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<a href="/scouting-reports/landing" role="menuitem" tabindex="-1" id="menu-item-0">Scouting Lists</a>
<a href="/scouting-reports/videos" role="menuitem" tabindex="-1" id="menu-item-0">Video Vault</a>
</div>
</div>
</div>
<div class="relative whitespace-nowrap">
<a href='/agents' class='inline-block text-slate-300 hover:text-white rounded-md px-[10px] py-1.5 my-1' >Agents
</a>
</div>
<div class="relative whitespace-nowrap">
<a href='/draft' class='inline-block text-slate-300 hover:text-white rounded-md px-[10px] py-1.5 my-1' >Draft
</a>
</div>
<div class="relative whitespace-nowrap">
<a href='/salary-cap' class='inline-block text-slate-300 hover:text-white rounded-md px-[10px] py-1.5 my-1' >Capology
</a>
</div>
<div class="relative whitespace-nowrap">
<a href='#' data-flytrigger="main8" class='inline-block text-slate-300 hover:text-white rounded-md pl-[8px] pr-[6px] py-1.5 my-1'>News and Transactions
<i class="fad fa-caret-down ml-[1px]"></i></a>
<div data-fly="main8" class="pp_navdropwrap News and Transactions" style="width:90vw;max-width:700px;" role="menu" aria-orientation="vertical" aria-labelledby="menu-button" tabindex="-1">
<div class="py-1" role="none">
<a href="/news" role="menuitem" tabindex="-1" id="menu-item-0">News</a>
<a href="/transactions" role="menuitem" tabindex="-1" id="menu-item-0">Transactions</a>
<a href="/signings" role="menuitem" tabindex="-1" id="menu-item-0">Signings</a>
<a href="/trades" role="menuitem" tabindex="-1" id="menu-item-0">Trades</a>
<a href="/injuries" role="menuitem" tabindex="-1" id="menu-item-0">Injuries</a>
<a href="/waiver-wire" role="menuitem" tabindex="-1" id="menu-item-0">Waivers</a>
<a href="https://puckpedia.com/puckpedia-hockey-show" role="menuitem" tabindex="-1" id="menu-item-0">Podcast</a>
</div>
</div>
</div>
</div>
</div>
</nav>
<a href="https://puckgm.puckpedia.com" class="flex items-center rounded-md py-[12px] px-[18px] uppercase tracking-widest font-semibold text-[12px] text-white hover:outline-none transition delay-100 ease-in-out duration-300 z-[10]">
<span class="pr-1 logotype_gm">Puck<span>GM</span></span><i class="fad fa-caret-right"></i>
</a>
</div>
</div>
</header>
<script>
const onNavigateSsoLogin = (e) => {
e.preventDefault();
e.stopPropagation();
const path = encodeURIComponent(window.location.pathname + window.location.search);
window.location.href=`/sso-login?return=${path}`;
}
const openChatbot = () => {
ppAskAI();
window.gtag('event', 'navbar_chatbot_open');
}
</script>
</div>
</div>
<a href="#main-content" class="visually-hidden focusable">
Skip to main content
</a>
<main role="main">
<div class="dialog-off-canvas-main-canvas" data-off-canvas-main-canvas>
<div data-drupal-messages-fallback class="hidden"></div><div class="pp_subnav mb-0" id="subnav">
<div class="pp_innerwrap flex items-center">
<div class="hidden md:block ml-4 flex-1 xl:ml-0 max-w-[280px] md:max-w-[300px] lg:max-w-[400px]">
<button class="w-full h-[34px] p-2 border border-pp-border rounded-md flex items-center pp_modaltrigger" data-modal_target="modal_search" data-modal_tabon="1">
<i class="pr-2 fad fa-magnifying-glass text-md"></i>
<span class="text-pp-copy_lt text-sm2 flex-1 text-left overflow-hidden text-ellipsis whitespace-nowrap">Search PuckPedia (Ctrl + K)</span>
</button>
</div>
<div class="pp_subnav_links !flex mx-auto ml-2 md:ml-5 w-full max-w-[400px] md:max-w-[520px]">
<a class="text-slate-500 whitespace-nowrap flex flex-grow items-center" href="#trades"><i class="fad fa-right-left mr-1 lg:mr-1.5"></i>Trades</a>
<a class="text-slate-500 whitespace-nowrap flex flex-grow items-center" href="#signings"><i class="fad fa-file-signature mr-1 lg:mr-1.5"></i>Signings</a>
<a class="text-slate-500 whitespace-nowrap flex flex-grow items-center" href="#free-agents"><i class="fas fa-lock-open mr-1 lg:mr-1.5"></i>Free Agents</a>
<a class="text-slate-500 whitespace-nowrap flex flex-grow items-center" href="#capologist">The Capologist</a>
</div>
</div>
</div>
<div>
</div>
<section data-observe="summary" class="pp_outerwrap mt-6 mb-6">
<div class="pp_innerwrap">
<div class="pp_layout_wrapper"> <div class="pp_layout_main !overflow-x-clip">
<div class="flex flex-col lg:flex-row gap-4 lg:gap-8 xl:gap-12">
<div class=""> <div class="md:hidden mb-6">
<div>
<div class="relative mb-1 flex justify-between items-baseline gap-1 ml-1">
<h3 class="mb-1 scroll-mt-[80px]"><span class="hidden md:inline-block">2026 NHL </span>Free Agency Tracker</h3>
<a href="/nhl-free-agency" class="pp_link pp_link-alltext" data-linked="s1">Track the Deals<i
class='fas fa-chevron-right'></i></a>
</div>
<a href="/nhl-free-agency" onclick="window.gtag('event', 'free-agency-summary-click', {})"
class="relative block shadow-md m-1 border border-pp-border rounded-lg overflow-hidden bg-pp-bg_lt">
<div class="px-4 py-4 text-center">
<div class="flex items-center justify-center gap-2">
<span class="fas fa-check-circle text-green-500 text-lg" aria-hidden="true"></span>
<div class="text-md font-bold text-pp-copy_dk uppercase tracking-wider">Free Agency Is Open</div>
</div>
</div>
<div class="grid grid-cols-2 border-t border-pp-border">
<div class="px-4 py-3 text-center">
<div class="text-xl font-bold text-pp-copy_dk tabular-nums leading-none">306</div>
<div class="text-sm2 uppercase tracking-wider text-pp-copy_lt mt-1.5">Contracts Signed</div>
</div>
<div class="px-4 py-3 text-center border-l border-pp-border"
x-data="capTradedCounter($refs.counter, 0, 1875044055, 1200)">
<div x-ref="counter" class="text-lg font-bold text-pp-copy_dk tabular-nums leading-none"></div>
<div class="text-sm2 uppercase tracking-wider text-pp-copy_lt mt-1.5">Total Value</div>
</div>
</div>
<div class="absolute right-1 top-1" onclick="event.stopPropagation(); event.preventDefault()">
<i class="fas fa-circle-question pp_infotip" data-toggle="popover" data-title="Free Agency Tracker"
data-content="Tracking all deals signed on or after July 1st, 2026."></i>
</div>
</a>
<script>
document.addEventListener("alpine:init", () => {
Alpine.data("deadlineCountDown", (deadlineTimeMs) => ({
msRemaining: 0,
pad(n) {
return String(Math.max(0, n)).padStart(2, "0");
},
get days() {
return this.pad(Math.floor(this.msRemaining / 86400000));
},
get hours() {
return this.pad(Math.floor(this.msRemaining / 3600000) % 24);
},
get minutes() {
return this.pad(Math.floor(this.msRemaining / 60000) % 60);
},
get seconds() {
return this.pad(Math.floor(this.msRemaining / 1000) % 60);
},
init() {
this.msRemaining = deadlineTimeMs - Date.now();
this.interval = setInterval(() => {
this.msRemaining = deadlineTimeMs - Date.now();
}, 1000);
},
destroy() {
clearInterval(this.interval);
}
}));
Alpine.data("capTradedCounter", (element, start, end, duration = 2000) => ({
countUp() {
let startTime = null;
let lastValue = start;
function easeOut(t) {
return 1 - Math.pow(1 - t, 4); // Quartic easing for stronger ease-out
}
function formatCurrency(value) {
return `$${value.toLocaleString()}`;
}
function animate(time) {
if (!startTime) startTime = time;
const elapsed = time - startTime;
const progress = Math.min(elapsed / duration, 1);
const easedProgress = easeOut(progress);
const currentValue = Math.floor(start + (end - start) * easedProgress);
if (currentValue !== lastValue) {
element.textContent = formatCurrency(currentValue);
lastValue = currentValue;
}
if (progress < 1) {
requestAnimationFrame(animate);
} else {
element.textContent = formatCurrency(end);
}
}
element.textContent = formatCurrency(start);
setTimeout(() => {
requestAnimationFrame(animate);
}, 10);
},
init() {
this.countUp()
}
}));
});
</script>
</div>
</div>
<div class="relative mb-1.5 flex justify-between items-baseline gap-1 ml-1">
<h1 class="h3"><i class="fa-kit fa-puckpedia"></i>NHL<span class="hidden md:inline-block"> Salary</span> Cap
Summary</h3>
<a href="/teams" class="pp_link pp_link-alltext" data-linked="s1">View All<i class='fas fa-chevron-right'></i></a>
</div>
<div>
<div class="pp_table-wrapper pp_card">
<table class="w-full pp_table pp_table-striped pp_table-home tablesorter sortbold {sortlist: [[0,2]]}">
<thead>
<tr>
<th class="" data-extract_ch data-sorter="text" data-sortInitialOrder="asc"></th>
<th class="text-right" data-extract_ch data-sortInitialOrder="desc">Proj<span class="hidden md:inline-block lg:hidden xl:inline-block">ected</span><br/>Cap Hit</th>
<th class="text-right" data-extract_ch data-sortInitialOrder="desc">Proj<span class="hidden md:inline-block lg:hidden xl:inline-block">ected</span><br/>Space</th>
<th class="text-right" data-extract_ch data-sortInitialOrder="asc">Current<br/><i class="fas fa-circle-question pp_infotip" data-toggle="popover" data-title="Current Cap Space" data-content="Amount of Annual Cap Hit that can be added to the roster without exceeding the Upper Limit (Salary Cap Maximum) based on the current roster. For teams using LTIR, Current Cap Space is the amount of annual cap hit that can be added without exceeding the Salary Cap by more than the team's LTIR Pool.<div class='mt-2'><a class='pp_btn-sm my-2 mt-2' href='/8-team-cap-hit-calculations-accrued-cap-space' onclick='window.gtag(`event`, `tippy-primary-button`, {tooltip_title: `Current Cap Space`})'>More / Ask Question</a></div>"></i>Space</th>
<th class="text-right">Active<br/>Roster</th>
</tr>
</thead>
<tbody class="divide-y divide-slate-200 dark:divide-slate-700">
<tr class="group cursor-pointer" onclick="window.location.href = '/team/anaheim-ducks'">
<td class="pl-1" data-extract_ch="ANA">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/anaheim-ducks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/25-sm@2.webp' alt='Ducks logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/anaheim-ducks">
<span class="sm:hidden">ANA</span>
<span class="hidden sm:inline-block">Anaheim</span>
<span class="sr-only">Ducks</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="94,926,605" data-sorter="text">
<span>$94.93<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="9,073,395">
<span>$9.07<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="9,073,395">
<span>$9.07<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
22<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/boston-bruins'">
<td class="pl-1" data-extract_ch="BOS">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/boston-bruins'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/3-sm@2.webp' alt='Bruins logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/boston-bruins">
<span class="sm:hidden">BOS</span>
<span class="hidden sm:inline-block">Boston</span>
<span class="sr-only">Bruins</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="98,609,583" data-sorter="text">
<span>$98.61<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="5,390,417">
<span>$5.39<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="5,390,417">
<span>$5.39<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/buffalo-sabres'">
<td class="pl-1" data-extract_ch="BUF">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/buffalo-sabres'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/10-sm@2.webp' alt='Sabres logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/buffalo-sabres">
<span class="sm:hidden">BUF</span>
<span class="hidden sm:inline-block">Buffalo</span>
<span class="sr-only">Sabres</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="98,876,348" data-sorter="text">
<span>$98.88<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="5,123,652">
<span>$5.12<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="5,123,652">
<span>$5.12<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/carolina-hurricanes'">
<td class="pl-1" data-extract_ch="CAR">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/carolina-hurricanes'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/5-sm@2.webp' alt='Hurricanes logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/carolina-hurricanes">
<span class="sm:hidden">CAR</span>
<span class="hidden sm:inline-block">Carolina</span>
<span class="sr-only">Hurricanes</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="94,119,818" data-sorter="text">
<span>$94.12<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="9,880,182">
<span>$9.88<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="9,880,182">
<span>$9.88<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
21<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/columbus-blue-jackets'">
<td class="pl-1" data-extract_ch="CBJ">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/columbus-blue-jackets'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/30-sm@2.webp' alt='Blue Jackets logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/columbus-blue-jackets">
<span class="sm:hidden">CBJ</span>
<span class="hidden sm:inline-block">Columbus</span>
<span class="sr-only">Blue Jackets</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="91,354,999" data-sorter="text">
<span>$91.35<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="12,645,001">
<span>$12.65<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="12,645,001">
<span>$12.65<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
22<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/calgary-flames'">
<td class="pl-1" data-extract_ch="CGY">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/calgary-flames'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/18-sm@2.webp' alt='Flames logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/calgary-flames">
<span class="sm:hidden">CGY</span>
<span class="hidden sm:inline-block">Calgary</span>
<span class="sr-only">Flames</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="89,116,666" data-sorter="text">
<span>$89.12<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="14,883,334">
<span>$14.88<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="14,883,334">
<span>$14.88<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/chicago-blackhawks'">
<td class="pl-1" data-extract_ch="CHI">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/chicago-blackhawks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/22-sm@2.webp' alt='Blackhawks logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/chicago-blackhawks">
<span class="sm:hidden">CHI</span>
<span class="hidden sm:inline-block">Chicago</span>
<span class="sr-only">Blackhawks</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="101,580,824" data-sorter="text">
<span>$101.58<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="2,419,176">
<span>$2.42<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="2,419,176">
<span>$2.42<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
22<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/colorado-avalanche'">
<td class="pl-1" data-extract_ch="COL">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/colorado-avalanche'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/1-sm@2.webp' alt='Avalanche logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/colorado-avalanche">
<span class="sm:hidden">COL</span>
<span class="hidden sm:inline-block">Colorado</span>
<span class="sr-only">Avalanche</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="103,595,841" data-sorter="text">
<span>$103.60<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="404,159">
<span>$404<span class='pp_currency_abbrev'>K</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="404,159">
<span>$404<span class='pp_currency_abbrev'>K</span></span>
</td>
<td class="text-right">
22<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/dallas-stars'">
<td class="pl-1" data-extract_ch="DAL">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/dallas-stars'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/20-sm@2.webp' alt='Stars logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/dallas-stars">
<span class="sm:hidden">DAL</span>
<span class="hidden sm:inline-block">Dallas</span>
<span class="sr-only">Stars</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="105,360,333" data-sorter="text">
<span>$105.36<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="-1,360,333">
<span>-$1.36<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="-1,360,333">
<span>-$1.36<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/detroit-red-wings'">
<td class="pl-1" data-extract_ch="DET">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/detroit-red-wings'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/2-sm@2.webp' alt='Red Wings logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/detroit-red-wings">
<span class="sm:hidden">DET</span>
<span class="hidden sm:inline-block">Detroit</span>
<span class="sr-only">Red Wings</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="84,427,916" data-sorter="text">
<span>$84.43<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="19,572,084">
<span>$19.57<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="19,572,084">
<span>$19.57<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
22<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/edmonton-oilers'">
<td class="pl-1" data-extract_ch="EDM">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/edmonton-oilers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/24-sm@2.webp' alt='Oilers logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/edmonton-oilers">
<span class="sm:hidden">EDM</span>
<span class="hidden sm:inline-block">Edmonton</span>
<span class="sr-only">Oilers</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="99,274,166" data-sorter="text">
<span>$99.27<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,725,834">
<span>$4.73<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,725,834">
<span>$4.73<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/florida-panthers'">
<td class="pl-1" data-extract_ch="FLA">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/florida-panthers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/14-sm@2.webp' alt='Panthers logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/florida-panthers">
<span class="sm:hidden">FLA</span>
<span class="hidden sm:inline-block">Florida</span>
<span class="sr-only">Panthers</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="103,965,714" data-sorter="text">
<span>$103.97<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="34,286">
<span>$34<span class='pp_currency_abbrev'>K</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="34,286">
<span>$34<span class='pp_currency_abbrev'>K</span></span>
</td>
<td class="text-right">
22<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/los-angeles-kings'">
<td class="pl-1" data-extract_ch="LAK">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/los-angeles-kings'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/23-sm@2.webp' alt='Kings logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/los-angeles-kings">
<span class="sm:hidden">LAK</span>
<span class="hidden sm:inline-block">Los Angeles</span>
<span class="sr-only">Kings</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="102,225,000" data-sorter="text">
<span>$102.23<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="1,775,000">
<span>$1.78<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="1,775,000">
<span>$1.78<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/minnesota-wild'">
<td class="pl-1" data-extract_ch="MIN">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/minnesota-wild'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/29-sm@2.webp' alt='Wild logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/minnesota-wild">
<span class="sm:hidden">MIN</span>
<span class="hidden sm:inline-block">Minnesota</span>
<span class="sr-only">Wild</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="102,847,499" data-sorter="text">
<span>$102.85<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="1,152,501">
<span>$1.15<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="1,152,501">
<span>$1.15<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/montreal-canadiens'">
<td class="pl-1" data-extract_ch="MTL">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/montreal-canadiens'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/11-sm@2.webp' alt='Canadiens logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/montreal-canadiens">
<span class="sm:hidden">MTL</span>
<span class="hidden sm:inline-block">Montreal</span>
<span class="sr-only">Canadiens</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="94,216,076" data-sorter="text">
<span>$94.22<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="9,783,924">
<span>$9.78<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="9,783,924">
<span>$9.78<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
21<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/nashville-predators'">
<td class="pl-1" data-extract_ch="NAS">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/nashville-predators'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/27-sm@2.webp' alt='Predators logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/nashville-predators">
<span class="sm:hidden">NAS</span>
<span class="hidden sm:inline-block">Nashville</span>
<span class="sr-only">Predators</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="96,329,556" data-sorter="text">
<span>$96.33<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="7,670,444">
<span>$7.67<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="7,670,444">
<span>$7.67<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/new-jersey-devils'">
<td class="pl-1" data-extract_ch="NJD">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-jersey-devils'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/13-sm@2.webp' alt='Devils logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/new-jersey-devils">
<span class="sm:hidden">NJD</span>
<span class="hidden sm:inline-block">New Jersey</span>
<span class="sr-only">Devils</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="100,150,000" data-sorter="text">
<span>$100.15<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="3,850,000">
<span>$3.85<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="3,850,000">
<span>$3.85<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/new-york-islanders'">
<td class="pl-1" data-extract_ch="NYI">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-islanders'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/4-sm@2.webp' alt='Islanders logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/new-york-islanders">
<span class="sm:hidden">NYI</span>
<span class="hidden sm:inline-block">New York</span>
<span class="sr-only">Islanders</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="101,065,416" data-sorter="text">
<span>$101.07<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="2,934,584">
<span>$2.93<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="2,934,584">
<span>$2.93<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/new-york-rangers'">
<td class="pl-1" data-extract_ch="NYR">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/6-sm@2.webp' alt='Rangers logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/new-york-rangers">
<span class="sm:hidden">NYR</span>
<span class="hidden sm:inline-block">New York</span>
<span class="sr-only">Rangers</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="102,447,024" data-sorter="text">
<span>$102.45<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="1,552,976">
<span>$1.55<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="1,552,976">
<span>$1.55<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/ottawa-senators'">
<td class="pl-1" data-extract_ch="OTT">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/ottawa-senators'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/9-sm@2.webp' alt='Senators logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/ottawa-senators">
<span class="sm:hidden">OTT</span>
<span class="hidden sm:inline-block">Ottawa</span>
<span class="sr-only">Senators</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="99,804,167" data-sorter="text">
<span>$99.80<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,195,833">
<span>$4.20<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,195,833">
<span>$4.20<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/philadelphia-flyers'">
<td class="pl-1" data-extract_ch="PHI">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/philadelphia-flyers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/12-sm@2.webp' alt='Flyers logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/philadelphia-flyers">
<span class="sm:hidden">PHI</span>
<span class="hidden sm:inline-block">Philadelphia</span>
<span class="sr-only">Flyers</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="90,217,917" data-sorter="text">
<span>$90.22<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="13,782,083">
<span>$13.78<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="13,782,083">
<span>$13.78<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/pittsburgh-penguins'">
<td class="pl-1" data-extract_ch="PIT">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/pittsburgh-penguins'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/7-sm@2.webp' alt='Penguins logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/pittsburgh-penguins">
<span class="sm:hidden">PIT</span>
<span class="hidden sm:inline-block">Pittsburgh</span>
<span class="sr-only">Penguins</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="93,097,360" data-sorter="text">
<span>$93.10<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="10,902,640">
<span>$10.90<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="10,902,640">
<span>$10.90<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/seattle-kraken'">
<td class="pl-1" data-extract_ch="SEA">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/seattle-kraken'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/271-sm@2.webp' alt='Kraken logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/seattle-kraken">
<span class="sm:hidden">SEA</span>
<span class="hidden sm:inline-block">Seattle</span>
<span class="sr-only">Kraken</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="85,594,463" data-sorter="text">
<span>$85.59<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="18,405,537">
<span>$18.41<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="18,405,537">
<span>$18.41<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/san-jose-sharks'">
<td class="pl-1" data-extract_ch="SJS">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/san-jose-sharks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/21-sm@2.webp' alt='Sharks logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/san-jose-sharks">
<span class="sm:hidden">SJS</span>
<span class="hidden sm:inline-block">San Jose</span>
<span class="sr-only">Sharks</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="100,664,305" data-sorter="text">
<span>$100.66<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="3,335,695">
<span>$3.34<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="3,335,695">
<span>$3.34<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/st-louis-blues'">
<td class="pl-1" data-extract_ch="STL">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/st-louis-blues'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/16-sm@2.webp' alt='Blues logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/st-louis-blues">
<span class="sm:hidden">STL</span>
<span class="hidden sm:inline-block">St. Louis</span>
<span class="sr-only">Blues</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="99,630,832" data-sorter="text">
<span>$99.63<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,369,168">
<span>$4.37<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,369,168">
<span>$4.37<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/tampa-bay-lightning'">
<td class="pl-1" data-extract_ch="TBL">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/tampa-bay-lightning'><img class='flex-none logo-sm my-0 pp_logo-tbl' src='https://static.puckpedia.com/logos/17-sm@2.webp' alt='Lightning logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/tampa-bay-lightning">
<span class="sm:hidden">TBL</span>
<span class="hidden sm:inline-block">Tampa Bay</span>
<span class="sr-only">Lightning</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="100,771,666" data-sorter="text">
<span>$100.77<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="3,228,334">
<span>$3.23<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="3,228,334">
<span>$3.23<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/toronto-maple-leafs'">
<td class="pl-1" data-extract_ch="TOR">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/toronto-maple-leafs'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/8-sm@2.webp' alt='Maple Leafs logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/toronto-maple-leafs">
<span class="sm:hidden">TOR</span>
<span class="hidden sm:inline-block">Toronto</span>
<span class="sr-only">Maple Leafs</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="106,752,382" data-sorter="text">
<span>$106.75<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="-2,752,382">
<span>-$2.75<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="-2,752,382">
<span>-$2.75<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/utah-mammoth'">
<td class="pl-1" data-extract_ch="UTA">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/utah-mammoth'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/19-sm@2.webp' alt='Mammoth logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/utah-mammoth">
<span class="sm:hidden">UTA</span>
<span class="hidden sm:inline-block">Utah</span>
<span class="sr-only">Mammoth</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="99,415,357" data-sorter="text">
<span>$99.42<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,584,643">
<span>$4.58<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,584,643">
<span>$4.58<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/vancouver-canucks'">
<td class="pl-1" data-extract_ch="VAN">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/vancouver-canucks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/26-sm@2.webp' alt='Canucks logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/vancouver-canucks">
<span class="sm:hidden">VAN</span>
<span class="hidden sm:inline-block">Vancouver</span>
<span class="sr-only">Canucks</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="86,185,833" data-sorter="text">
<span>$86.19<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="17,814,167">
<span>$17.81<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="17,814,167">
<span>$17.81<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/vegas-golden-knights'">
<td class="pl-1" data-extract_ch="VGK">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/vegas-golden-knights'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/269-sm@2.webp' alt='Golden Knights logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/vegas-golden-knights">
<span class="sm:hidden">VGK</span>
<span class="hidden sm:inline-block">Vegas</span>
<span class="sr-only">Golden Knights</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="112,661,182" data-sorter="text">
<span>$112.66<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="-8,661,182">
<span>-$8.66<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="-8,661,182">
<span>-$8.66<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
22<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/washington-capitals'">
<td class="pl-1" data-extract_ch="WAS">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/washington-capitals'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/15-sm@2.webp' alt='Capitals logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/washington-capitals">
<span class="sm:hidden">WAS</span>
<span class="hidden sm:inline-block">Washington</span>
<span class="sr-only">Capitals</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="103,924,583" data-sorter="text">
<span>$103.92<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="75,417">
<span>$75<span class='pp_currency_abbrev'>K</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="75,417">
<span>$75<span class='pp_currency_abbrev'>K</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/team/winnipeg-jets'">
<td class="pl-1" data-extract_ch="WPG">
<div class="flex items-center">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/winnipeg-jets'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/28-sm@2.webp' alt='Jets logo.'/></a></div>
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300 text-pp-copy_dk normal-case text-sm2 tracking-wide" href="/team/winnipeg-jets">
<span class="sm:hidden">WPG</span>
<span class="hidden sm:inline-block">Winnipeg</span>
<span class="sr-only">Jets</span>
</a>
</div>
</td>
<td class="text-right" data-extract_ch="99,518,332" data-sorter="text">
<span>$99.52<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,481,668">
<span>$4.48<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right py-1.5" data-extract_ch="4,481,668">
<span>$4.48<span class='pp_currency_abbrev'>M</span></span>
</td>
<td class="text-right">
23<span class="text-slate-400">/23</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="ppplus mt-6 md:hidden">
<div>
<div class="flex md:hidden justify-center">
<div class="pp_ad-box-mob pp_ad-mob">
<div class="pp_adtitle_container w-full px-4">
<div class="leading-none">Advertisement</div>
<div class="leading-none underline cursor-pointer" data-toggle="popover" data-tippy-trigger="click" data-title="No More Ads"
data-content="Upgrade to PuckPedia+ for an ad-free experience. <br /> <a href='/puckpedia-plus?ref=ad_cta' target='_blank' class='pp_btn-sm my-2 mt-2'>Learn More</a>">
Remove Ads
</div>
</div>
<div class="ad_inner" id="mob-box-ad-b" tpd-dont-inject="true"></div> </div>
</div>
</div>
</div>
</div>
<div class="flex-1 min-w-[0px]"> <div class="hidden md:block mb-4">
<div>
<div class="relative mb-1 flex justify-between items-baseline gap-1 ml-1">
<h3 class="mb-1 scroll-mt-[80px]"><span class="hidden md:inline-block">2026 NHL </span>Free Agency Tracker</h3>
<a href="/nhl-free-agency" class="pp_link pp_link-alltext" data-linked="s1">Track the Deals<i
class='fas fa-chevron-right'></i></a>
</div>
<a href="/nhl-free-agency" onclick="window.gtag('event', 'free-agency-summary-click', {})"
class="relative block shadow-md m-1 border border-pp-border rounded-lg overflow-hidden bg-pp-bg_lt">
<div class="px-4 py-4 text-center">
<div class="flex items-center justify-center gap-2">
<span class="fas fa-check-circle text-green-500 text-lg" aria-hidden="true"></span>
<div class="text-md font-bold text-pp-copy_dk uppercase tracking-wider">Free Agency Is Open</div>
</div>
</div>
<div class="grid grid-cols-2 border-t border-pp-border">
<div class="px-4 py-3 text-center">
<div class="text-xl font-bold text-pp-copy_dk tabular-nums leading-none">306</div>
<div class="text-sm2 uppercase tracking-wider text-pp-copy_lt mt-1.5">Contracts Signed</div>
</div>
<div class="px-4 py-3 text-center border-l border-pp-border"
x-data="capTradedCounter($refs.counter, 0, 1875044055, 1200)">
<div x-ref="counter" class="text-lg font-bold text-pp-copy_dk tabular-nums leading-none"></div>
<div class="text-sm2 uppercase tracking-wider text-pp-copy_lt mt-1.5">Total Value</div>
</div>
</div>
<div class="absolute right-1 top-1" onclick="event.stopPropagation(); event.preventDefault()">
<i class="fas fa-circle-question pp_infotip" data-toggle="popover" data-title="Free Agency Tracker"
data-content="Tracking all deals signed on or after July 1st, 2026."></i>
</div>
</a>
<script>
document.addEventListener("alpine:init", () => {
Alpine.data("deadlineCountDown", (deadlineTimeMs) => ({
msRemaining: 0,
pad(n) {
return String(Math.max(0, n)).padStart(2, "0");
},
get days() {
return this.pad(Math.floor(this.msRemaining / 86400000));
},
get hours() {
return this.pad(Math.floor(this.msRemaining / 3600000) % 24);
},
get minutes() {
return this.pad(Math.floor(this.msRemaining / 60000) % 60);
},
get seconds() {
return this.pad(Math.floor(this.msRemaining / 1000) % 60);
},
init() {
this.msRemaining = deadlineTimeMs - Date.now();
this.interval = setInterval(() => {
this.msRemaining = deadlineTimeMs - Date.now();
}, 1000);
},
destroy() {
clearInterval(this.interval);
}
}));
Alpine.data("capTradedCounter", (element, start, end, duration = 2000) => ({
countUp() {
let startTime = null;
let lastValue = start;
function easeOut(t) {
return 1 - Math.pow(1 - t, 4); // Quartic easing for stronger ease-out
}
function formatCurrency(value) {
return `$${value.toLocaleString()}`;
}
function animate(time) {
if (!startTime) startTime = time;
const elapsed = time - startTime;
const progress = Math.min(elapsed / duration, 1);
const easedProgress = easeOut(progress);
const currentValue = Math.floor(start + (end - start) * easedProgress);
if (currentValue !== lastValue) {
element.textContent = formatCurrency(currentValue);
lastValue = currentValue;
}
if (progress < 1) {
requestAnimationFrame(animate);
} else {
element.textContent = formatCurrency(end);
}
}
element.textContent = formatCurrency(start);
setTimeout(() => {
requestAnimationFrame(animate);
}, 10);
},
init() {
this.countUp()
}
}));
});
</script>
</div>
</div>
<div class="flex flex-col lg:flex-row gap-4 lg:gap-6 xl:gap-12 relative">
<div class="flex-1">
<div class="relative mb-1 flex justify-between items-baseline gap-1 ml-1">
<h3 id="signings" class="mb-1 scroll-mt-[80px]"><i class="fas fa-money-check-dollar-pen"></i>Signings</h3>
<a href="/signings" class="pp_link pp_link-alltext" data-linked="s1">All Signings<i class='fas fa-chevron-right'></i></a>
</div>
<div class="mb-4 p-1 border border-pp-border rounded-lg">
<div>
<div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/anaheim-ducks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/25-sm@2.webp' alt='Ducks logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>21</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10779">Lucius, Cruz</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">2yrs</div>
<div style="width:40px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_red text-pp-copy_red border-pp-copy_red/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: "></div>
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: RFA">'28</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$1,050,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/anaheim-ducks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/25-sm@2.webp' alt='Ducks logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 21 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8483479.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/cruz-lucius'>Cruz Lucius</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Entry Level</span>
<span class='opacity-40'>·</span>
<span>2 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$2,100,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$1,050,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/ben-hankinson'>Ben Hankinson</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/Octagon Athlete Representation'>Octagon Athlete Representation</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/cruz-lucius'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/6-sm@2.webp' alt='Rangers logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>21</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10780">Iorio, Vincent</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">1yr</div>
<div style="width:20px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div class="w-full flex" data-toggle="tooltip" data-html="true"
data-content="Signing Status: RFA<br/>
Expiry Status: RFA">
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border border-r-0"></div>
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border border-l-0"></div>
<div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs">'27</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$850,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/6-sm@2.webp' alt='Rangers logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 21 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8482861.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/vincent-iorio'>Vincent Iorio</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>1 year</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/jp-barry'>J.P. Barry</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/CAA Sports LLC'>CAA Sports LLC</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/vincent-iorio'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/6-sm@2.webp' alt='Rangers logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>19</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10778">Morrow, Scott</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">1yr</div>
<div style="width:20px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div class="w-full flex" data-toggle="tooltip" data-html="true"
data-content="Signing Status: RFA<br/>
Expiry Status: RFA">
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border border-r-0"></div>
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border border-l-0"></div>
<div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs">'27</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$850,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/6-sm@2.webp' alt='Rangers logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 19 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8482666.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/scott-morrow'>Scott Morrow</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>1 year</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/pat-brisson'>Pat Brisson</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/CAA Sports LLC'>CAA Sports LLC</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/scott-morrow'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/philadelphia-flyers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/12-sm@2.webp' alt='Flyers logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>18</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10777">McDonald, Hunter</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">2yrs</div>
<div style="width:40px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: RFA"></div>
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: RFA">'28</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$912,500
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/philadelphia-flyers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/12-sm@2.webp' alt='Flyers logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 18 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8483760.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/hunter-mcdonald'>Hunter McDonald</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>2 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$1,825,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$912,500</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/Pete-Rutili'>Pete Rutili</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/The·Team'>The·Team</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/hunter-mcdonald'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/montreal-canadiens'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/11-sm@2.webp' alt='Canadiens logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>13</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10776">Pastujov, Sasha</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">1yr</div>
<div style="width:20px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div class="w-full flex" data-toggle="tooltip" data-html="true"
data-content="Signing Status: RFA<br/>
Expiry Status: RFA">
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border border-r-0"></div>
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border border-l-0"></div>
<div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs">'27</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$850,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/montreal-canadiens'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/11-sm@2.webp' alt='Canadiens logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 13 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8482682.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/sasha-pastujov'>Sasha Pastujov</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>1 year</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/wade-arnott'>Wade Arnott</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/Newport Sports Management Inc.'>Newport Sports Management Inc.</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/sasha-pastujov'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/vancouver-canucks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/26-sm@2.webp' alt='Canucks logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>11</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10775">Novotný, Adam</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">3yrs</div>
<div style="width:60px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_red text-pp-copy_red border-pp-copy_red/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: "></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: RFA">'29</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$1,075,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/vancouver-canucks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/26-sm@2.webp' alt='Canucks logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 11 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8486074.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/adam-novotny'>Adam Novotný</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Entry Level</span>
<span class='opacity-40'>·</span>
<span>3 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$3,225,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$1,075,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/gerry-johannson'>Gerry Johannson</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/The Sports Corporation'>The Sports Corporation</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/adam-novotny'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/winnipeg-jets'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/28-sm@2.webp' alt='Jets logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>10</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10774">Bauer, Tyrel</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">2yrs</div>
<div style="width:40px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: RFA"></div>
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: RFA">'28</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$875,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/winnipeg-jets'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/28-sm@2.webp' alt='Jets logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 10 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8482459.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/tyrel-bauer'>Tyrel Bauer</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>2 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$1,750,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$875,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/gregory-landry'>Gregory Landry</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/Newport Sports Management Inc.'>Newport Sports Management Inc.</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/tyrel-bauer'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/pittsburgh-penguins'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/7-sm@2.webp' alt='Penguins logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>6</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10772">Koivunen, Ville</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">8yrs</div>
<div style="width:160px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: RFA"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:20px" class="bg-pp-bg_red text-pp-copy_red border-pp-copy_red/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_red text-pp-copy_red border-pp-copy_red/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: UFA">'34</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$4,000,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/pittsburgh-penguins'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/7-sm@2.webp' alt='Penguins logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 6 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8482758.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/ville-koivunen'>Ville Koivunen</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>8 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$32,000,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$4,000,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/ian-pulver'>Ian Pulver</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/The Will Sports Group'>The Will Sports Group</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/ville-koivunen'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/philadelphia-flyers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/12-sm@2.webp' alt='Flyers logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>6</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10773">Grebenkin, Nikita</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">2yrs</div>
<div style="width:40px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: RFA"></div>
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: RFA">'28</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$1,100,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/philadelphia-flyers'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/12-sm@2.webp' alt='Flyers logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 6 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8483733.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/nikita-grebyonkin'>Nikita Grebenkin</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>2 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$2,200,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$1,100,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/adel-mansurov'>Adel Mansurov</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/Newport Sports Management Inc.'>Newport Sports Management Inc.</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/nikita-grebyonkin'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/montreal-canadiens'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/11-sm@2.webp' alt='Canadiens logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>3</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10771">Szuber, Maksymilian</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">1yr</div>
<div style="width:20px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div class="w-full flex" data-toggle="tooltip" data-html="true"
data-content="Signing Status: RFA<br/>
Expiry Status: RFA">
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border border-r-0"></div>
<div style="width:10px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border border-l-0"></div>
<div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs">'27</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$850,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/montreal-canadiens'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/11-sm@2.webp' alt='Canadiens logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 3 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8483763.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/maksymilian-szuber'>Maksymilian Szuber</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>1 year</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$850,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/allan-walsh'>Allan Walsh</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/Octagon Athlete Representation'>Octagon Athlete Representation</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/maksymilian-szuber'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/pittsburgh-penguins'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/7-sm@2.webp' alt='Penguins logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>31</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10769">Novak, Thomas</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">3yrs</div>
<div style="width:60px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_red text-pp-copy_red border-pp-copy_red/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: UFA"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:20px" class="bg-pp-bg_red text-pp-copy_red border-pp-copy_red/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_red text-pp-copy_red border-pp-copy_red/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: UFA">'30</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$4,650,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/pittsburgh-penguins'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/7-sm@2.webp' alt='Penguins logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 31 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8478438.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/thomas-novak'>Thomas Novak</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>3 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$13,950,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$4,650,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/ben-hankinson'>Ben Hankinson</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/Octagon Athlete Representation'>Octagon Athlete Representation</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/thomas-novak'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
<div class="relative flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/san-jose-sharks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/21-sm@2.webp' alt='Sharks logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>31</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="relative flex items-center w-full">
<div class="relative flex items-center w-full"> <div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1"><a class="pp_link text-pp-copy_dk after:absolute after:inset-0" href="/signing/10770">Graf, Collin</a></div>
<div class="pp_content flex items-center mt-[2px]">
<div class="font-bold text-pp-copy_lt text-xs w-[30px]">3yrs</div>
<div style="width:60px;" class="relative h-[15px] hidden">
<div class="inline-flex h-[15px] relative">
<div class="flex h-full">
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-l border" data-toggle="tooltip" data-content="Signing Status: RFA"></div>
<div style="width:15px" class="dark:bg-slate-800 bg-pp-bg_lt border border-pp-border ml-[1px]"></div>
<div style="width:20px" class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r border ml-[1px]"></div><div class="bg-pp-bg_blue text-pp-copy_blue border-pp-copy_blue/30 rounded-r font-semibold absolute right-[4px] top-[3px] text-xxs" data-toggle="tooltip" data-content="Expiry Status: RFA">'29</div>
</div>
</div>
</div>
</div>
</div>
<div class="ml-auto">
<div class="text-pp-copy_dk font-bold text-base">
$4,250,000
<div class="font-bold text-pp-copy_lt text-xxs uppercase text-right">Cap Hit</div>
</div>
</div>
</div> <div class="my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/san-jose-sharks'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/21-sm@2.webp' alt='Sharks logo.'/></a></div>
<div>Signing</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 31 2026</span>
</div>
"
data-content="
<div class='py-1' style='width:270px'>
<div class='flex items-center gap-2.5'>
<div class='relative flex-none w-[40px] h-[40px]'><div class='rounded-full border border-slate-100 bg-slate-50'><img loading='lazy' src='https://cdn.puckpedia.com/s/nhl/8484911.jpg' data-fallback='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png' onerror='this.onerror=null;this.src=this.dataset.fallback' alt='' class='rounded-full border border-slate-100'/></div></div>
<div>
<a class='font-bold text-md pp_link block' href='/player/collin-graf'>Collin Graf</a>
<div class='flex items-center gap-1.5 text-sm text-pp-copy mt-0.5'>
<span>Standard</span>
<span class='opacity-40'>·</span>
<span>3 years</span>
</div>
</div>
</div>
<div class='flex gap-3 mt-3'>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Total Value</div>
<div class='text-md font-bold mt-1'>$12,750,000</div>
</div>
<div class='basis-1/2'>
<div class='text-xs text-pp-copy uppercase tracking-wide'>Cap Hit</div>
<div class='text-md font-bold mt-1'>$4,250,000</div>
</div>
</div>
<div class='flex items-center gap-1.5 text-sm mt-3 pt-3 border-t border-pp-border'>
<a class='pp_link' href='/agent/craig-oster'>Craig Oster</a>
<span class='opacity-40'>·</span>
<a class='pp_link' href='/agency/Newport Sports Management Inc.'>Newport Sports Management Inc.</a>
</div>
<div class='flex gap-2 mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/player/collin-graf'>Player Profile</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="relative mb-1 flex justify-between items-baseline gap-1 ml-1">
<h3 id="trades" class="scroll-mt-[80px]"><i class="fad fa-right-left"></i>Trades</h3>
<a href="/trades" class="pp_link pp_link-alltext" data-linked="s1">All Trades<i class='fas fa-chevron-right'></i></a>
</div>
<div class="mb-4 p-1 border border-pp-border rounded-lg">
<div>
<div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>20</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Muzzatti, Sutter</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/detroit-red-wings'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/2-xs@2.webp' alt='Red Wings logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1203"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/nashville-predators'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/27-xs@2.webp' alt='Predators logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-semibold text-xs line-clamp-2">Future<br/>Considerations</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 20 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/nashville-predators'>Nashville Predators</a> trade <a href='/player/sutter-muzzatti'>Sutter Muzzatti</a> to the <a href='/team/detroit-red-wings'>Detroit Red Wings</a> for future considerations</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/detroit-red-wings'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/2-md@2.webp' alt='Red Wings logo.'/></a></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/sutter-muzzatti'>Muzzatti, Sutter</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/nashville-predators'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/27-md@2.webp' alt='Predators logo.'/></a></div></div>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1203'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1203#comments'><i class='fad fa-comments pr-1'></i>Comments (4)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>19</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Lucius, Cruz</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/anaheim-ducks'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/25-xs@2.webp' alt='Ducks logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1202"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/pittsburgh-penguins'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/7-xs@2.webp' alt='Penguins logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-semibold text-xs line-clamp-2">Future<br/>Considerations</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 19 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/pittsburgh-penguins'>Pittsburgh Penguins</a> trade <a href='/player/cruz-lucius'>Cruz Lucius</a> to the <a href='/team/anaheim-ducks'>Anaheim Ducks</a> for future considerations</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/anaheim-ducks'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/25-md@2.webp' alt='Ducks logo.'/></a></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/cruz-lucius'>Lucius, Cruz</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/pittsburgh-penguins'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/7-md@2.webp' alt='Penguins logo.'/></a></div></div>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1202'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1202#comments'><i class='fad fa-comments pr-1'></i>Comments (5)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>17</div><div class='uppercase font-bold tracking-tight text-[11px]'>Aug</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Sardaryan, Stiven</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/carolina-hurricanes'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/5-xs@2.webp' alt='Hurricanes logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1201"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/buffalo-sabres'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/10-xs@2.webp' alt='Sabres logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-semibold text-xs line-clamp-2">Future<br/>Considerations</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Aug 17 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/buffalo-sabres'>Buffalo Sabres</a> trade <a href='/player/stiven-sardaryan'>Stiven Sardaryan</a> to the <a href='/team/carolina-hurricanes'>Carolina Hurricanes</a> for future considerations</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/carolina-hurricanes'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/5-md@2.webp' alt='Hurricanes logo.'/></a></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/stiven-sardaryan'>Sardaryan, Stiven</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/buffalo-sabres'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/10-md@2.webp' alt='Sabres logo.'/></a></div></div>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1201'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1201#comments'><i class='fad fa-comments pr-1'></i>Comments (4)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>27</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Pastujov, Sasha</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/montreal-canadiens'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/11-xs@2.webp' alt='Canadiens logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1200"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/anaheim-ducks'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/25-xs@2.webp' alt='Ducks logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Farrell, Sean</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 27 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/anaheim-ducks'>Anaheim Ducks</a> acquire <a href='/player/sean-farrell'>Sean Farrell</a> from the <a href='/team/montreal-canadiens'>Montreal Canadiens</a> for <a href='/player/sasha-pastujov'>Sasha Pastujov</a></div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/montreal-canadiens'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/11-md@2.webp' alt='Canadiens logo.'/></a></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/sasha-pastujov'>Pastujov, Sasha</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/anaheim-ducks'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/25-md@2.webp' alt='Ducks logo.'/></a></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/sean-farrell'>Farrell, Sean</a>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1200'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1200#comments'><i class='fad fa-comments pr-1'></i>Comments (7)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>13</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Kopff, Tyler</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/washington-capitals'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/15-xs@2.webp' alt='Capitals logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1199"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/buffalo-sabres'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/10-xs@2.webp' alt='Sabres logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Funk, Zac</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 13 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/buffalo-sabres'>Buffalo Sabres</a> acquire <a href='/player/zac-funk'>Zac Funk</a> from the <a href='/team/washington-capitals'>Washington Capitals</a> for <a href='/player/tyler-kopff'>Tyler Kopff</a></div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/washington-capitals'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/15-md@2.webp' alt='Capitals logo.'/></a></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/tyler-kopff'>Kopff, Tyler</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/buffalo-sabres'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/10-md@2.webp' alt='Sabres logo.'/></a></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/zac-funk'>Funk, Zac</a>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1199'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1199#comments'><i class='fad fa-comments pr-1'></i>Comments (4)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>2</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Middleton, Jacob</span>
<div class="text-pp-copy_lt text-sm">+3 more...</div>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/calgary-flames'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/18-xs@2.webp' alt='Flames logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1198"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/minnesota-wild'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/29-xs@2.webp' alt='Wild logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Coleman, Blake</span>
<span class="text-pp-copy_lt pp_content text-sm2 line-clamp-1">Maatta, Olli</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 2 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/minnesota-wild'>Minnesota Wild</a> acquire <a href='/player/blake-coleman'>Blake Coleman</a> (50% retained) and <a href='/player/olli-maatta'>Olli Maatta</a> from the <a href='/team/calgary-flames'>Calgary Flames</a> for <a href='/player/jacob-middleton'>Jacob Middleton</a>, a 2029 2nd round pick, a 2027 3rd round pick and a 2028 4th round pick</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/calgary-flames'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/18-md@2.webp' alt='Flames logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-red-800 bg-red-50 dark:bg-red-400/10 dark:text-red-200 border border-red-100 dark:border-red-400/40'>-$1,600,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/jacob-middleton'>Middleton, Jacob</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/minnesota-wild/draftpicks'>2029 Round 2</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/minnesota-wild/draftpicks'>2027 Round 3</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/minnesota-wild/draftpicks'>2028 Round 4</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/minnesota-wild'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/29-md@2.webp' alt='Wild logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-green-800 bg-green-50 dark:bg-green-400/10 dark:text-green-200 border border-green-100 dark:border-green-400/40'>$1,600,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/blake-coleman'>Coleman, Blake</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/olli-maatta'>Maatta, Olli</a>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1198'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1198#comments'><i class='fad fa-comments pr-1'></i>Comments (25)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>1</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">2029 Round 3</span>
<span class="text-pp-copy_lt pp_content text-sm line-clamp-1">2027 Round 7</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/vegas-golden-knights'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/269-xs@2.webp' alt='Golden Knights logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1196"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/detroit-red-wings'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/2-xs@2.webp' alt='Red Wings logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Kolesar, Keegan</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 1 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/detroit-red-wings'>Detroit Red Wings</a> acquire <a href='/player/keegan-kolesar'>Keegan Kolesar</a> from the <a href='/team/vegas-golden-knights'>Vegas Golden Knights</a> for a 2029 3rd round pick and a 2027 7th round pick</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/vegas-golden-knights'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/269-md@2.webp' alt='Golden Knights logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-red-800 bg-red-50 dark:bg-red-400/10 dark:text-red-200 border border-red-100 dark:border-red-400/40'>-$2,500,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/detroit-red-wings/draftpicks'>2029 Round 3</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/detroit-red-wings/draftpicks'>2027 Round 7</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/detroit-red-wings'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/2-md@2.webp' alt='Red Wings logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-green-800 bg-green-50 dark:bg-green-400/10 dark:text-green-200 border border-green-100 dark:border-green-400/40'>$2,500,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/keegan-kolesar'>Kolesar, Keegan</a>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1196'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1196#comments'><i class='fad fa-comments pr-1'></i>Comments (13)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>1</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">2027 Round 2</span>
<span class="text-pp-copy_lt pp_content text-sm line-clamp-1">2028 Round 3</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/6-xs@2.webp' alt='Rangers logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1195"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/boston-bruins'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/3-xs@2.webp' alt='Bruins logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Borgen, William</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 1 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/boston-bruins'>Boston Bruins</a> acquire <a href='/player/william-borgen'>William Borgen</a> from the <a href='/team/new-york-rangers'>New York Rangers</a> for a 2027 2nd round pick and a conditional 2028 3rd round pick</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/6-md@2.webp' alt='Rangers logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-red-800 bg-red-50 dark:bg-red-400/10 dark:text-red-200 border border-red-100 dark:border-red-400/40'>-$4,100,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/boston-bruins/draftpicks'>2027 Round 2</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/boston-bruins/draftpicks'>2028 Round 3</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/boston-bruins'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/3-md@2.webp' alt='Bruins logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-green-800 bg-green-50 dark:bg-green-400/10 dark:text-green-200 border border-green-100 dark:border-green-400/40'>$4,100,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/william-borgen'>Borgen, William</a>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1195'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1195#comments'><i class='fad fa-comments pr-1'></i>Comments (3)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>1</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">2030 Round 1</span>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/vancouver-canucks'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/26-xs@2.webp' alt='Canucks logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1194"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/6-xs@2.webp' alt='Rangers logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Pettersson, Marcus</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 1 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/new-york-rangers'>New York Rangers</a> acquire <a href='/player/marcus-pettersson'>Marcus Pettersson</a> from the <a href='/team/vancouver-canucks'>Vancouver Canucks</a> for a conditional 2030 1st round pick</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/vancouver-canucks'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/26-md@2.webp' alt='Canucks logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-red-800 bg-red-50 dark:bg-red-400/10 dark:text-red-200 border border-red-100 dark:border-red-400/40'>-$5,500,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/new-york-rangers/draftpicks'>2030 Round 1</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/6-md@2.webp' alt='Rangers logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-green-800 bg-green-50 dark:bg-green-400/10 dark:text-green-200 border border-green-100 dark:border-green-400/40'>$5,500,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/marcus-pettersson'>Pettersson, Marcus</a>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1194'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1194#comments'><i class='fad fa-comments pr-1'></i>Comments (18)</a>
</div>
</div>
">
</i>
</div>
</div>
<div class="relative flex gap-2 py-1"> <div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>1</div><div class='uppercase font-bold tracking-tight text-[11px]'>Jul</div></div></div>
<div class="grid grid-cols-[1fr_max-content_1fr] items-start w-full relative">
<div class="text-left align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Durzi, Sean</span>
<div class="text-pp-copy_lt text-sm">+2 more...</div>
</div>
<div class="flex items-center my-auto px-3">
<div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/6-xs@2.webp' alt='Rangers logo.'/></a></div><a class="after:absolute after:inset-0" href="/trade/1193"><i class="fad fa-right-left mr-1"></i></a><div class='inline-block flex-none mr-1'><a target='_self' href='/team/utah-mammoth'><img class='flex-none logo-xs my-0 ' src='https://static.puckpedia.com/logos/19-xs@2.webp' alt='Mammoth logo.'/></a></div>
</div>
<div class="text-right align-middle my-auto">
<span class="text-pp-copy_dk font-bold text-sm2 block line-clamp-1">Trocheck, Vincent</span>
</div>
</div>
<div class="ml-auto my-auto px-2">
<i class="fa-light fa-circle-info text-pp-copy_lt"
data-toggle="popover" data-title="
<div class='flex items-center'>
<i class='fad fa-right-left pr-1.5'></i>
<div>Trade</div>
<span class='ml-auto uppercase font-normal text-xs'>Jul 1 2026</span>
</div>
"
data-content="
<div class='py-1'>
<div class='mb-3'>The <a href='/team/utah-mammoth'>Utah Mammoth</a> acquire <a href='/player/vincent-trocheck'>Vincent Trocheck</a> from the <a href='/team/new-york-rangers'>New York Rangers</a> for <a href='/player/sean-durzi'>Sean Durzi</a>, <a href='/player/cole-beaudoin'>Cole Beaudoin</a> and a conditional 2027 3rd round pick</div>
<div class='grid grid-cols-[1fr_max-content_1fr] items-start w-full'>
<div>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/new-york-rangers'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/6-md@2.webp' alt='Rangers logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-green-800 bg-green-50 dark:bg-green-400/10 dark:text-green-200 border border-green-100 dark:border-green-400/40'>$375,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/sean-durzi'>Durzi, Sean</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/cole-beaudoin'>Beaudoin, Cole</a>
<a class='pp_link font-semibold text-sm block py-0.5' href='/team/utah-mammoth/draftpicks'>2027 Round 3</a>
</div>
<div class='flex items-center my-auto px-3'><i class='fad fa-right-left text-pp-copy_lt'></i></div>
<div class='text-right'>
<div class='mb-2'><div class='inline-block flex-none mr-1'><a target='_self' href='/team/utah-mammoth'><img class='flex-none logo-md my-0 ' src='https://static.puckpedia.com/logos/19-md@2.webp' alt='Mammoth logo.'/></a></div></div>
<div><div class='mb-2 h-[20px] font-sans text-sm font-bold inline-block'><div class='numwrap flex items-center justify-end h-full'><div class='flex h-full w-full justify-center items-center px-2 rounded text-red-800 bg-red-50 dark:bg-red-400/10 dark:text-red-200 border border-red-100 dark:border-red-400/40'>-$375,000</div></div></div></div>
<a class='pp_link font-semibold text-sm block py-0.5' href='/player/vincent-trocheck'>Trocheck, Vincent</a>
</div>
</div>
<div class='flex gap-2 justify-center mt-3 pt-3 border-t border-pp-border'>
<a class='pp_btn-sm' href='/trade/1193'>Trade Details</a>
<a class='pp_btn-sm' href='/trade/1193#comments'><i class='fad fa-comments pr-1'></i>Comments (18)</a>
</div>
</div>
">
</i>
</div>
</div>
</div>
</div>
</div>
<div class="lg:hidden mb-6">
<div>
<h3 class="mb-2">Latest from PuckPedia</h3>
<a href="/news/2026-ncaa-draft-related-unrestricted-free-agents" class="group flex flex-col !no-underline" onclick="window.gtag('event', 'news-preview-item-click', {})">
<div class="mb-2 aspect-video w-full overflow-hidden rounded-md bg-pp-bg_lt">
<img
class="h-full w-full object-cover"
src="/sites/default/files/styles/news_banner/public/2026-06/USATSI_25733877.jpg?h=68630180&itok=1Tf_ssm5"
alt=""
loading="lazy"
onerror="this.onerror=null; this.src='https://cdn.puckpedia.com/s/assets/puckpedia.svg';"
/>
</div>
<div class="text-base font-bold leading-[1.2] text-pp-copy_dk line-clamp-3 group-hover:underline">
2026 NCAA draft-related unrestricted free agents
</div>
</a>
</div>
</div>
<div class="relative mb-1 flex justify-between items-baseline gap-1 ml-1">
<h3 id="waivers" class="scroll-mt-[80px]"><i class="fas fa-turn-down"></i>Waivers</h3>
<a href="/waiver-wire" class="pp_link pp_link-alltext" data-linked="s1">Waiver Wire<i class='fas fa-chevron-right'></i></a>
</div>
<div class="mb-1 p-1 border border-pp-border rounded-lg">
<div>
<div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/colorado-avalanche'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/1-sm@2.webp' alt='Avalanche logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>27</div><div class='uppercase font-bold tracking-tight text-[11px]'>May</div></div></div>
<div class="relative flex justify-between items-center w-full"> <div class="text-pp-copy_dk font-bold text-sm2 mb-0.5"><a class="pp_link after:absolute after:inset-0 text-pp-copy_dk line-clamp-1" href="/player/jack-ahcan">Ahcan, Jack</a></div>
<div class="flex gap-1 items-center shrink-0 pr-2 font-bold text-pp-copy_lt text-xs uppercase text-right">
<div class="font-bold text-pp-copy_lt text-xs uppercase">Cleared</div>
</div>
</div>
</div>
<div class="relative border-b border-pp-border flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/boston-bruins'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/3-sm@2.webp' alt='Bruins logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>2</div><div class='uppercase font-bold tracking-tight text-[11px]'>May</div></div></div>
<div class="relative flex justify-between items-center w-full"> <div class="text-pp-copy_dk font-bold text-sm2 mb-0.5"><a class="pp_link after:absolute after:inset-0 text-pp-copy_dk line-clamp-1" href="/player/lukas-reichel">Reichel, Lukas</a></div>
<div class="flex gap-1 items-center shrink-0 pr-2 font-bold text-pp-copy_lt text-xs uppercase text-right">
<div class="font-bold text-pp-copy_lt text-xs uppercase">Cleared</div>
</div>
</div>
</div>
<div class="relative flex gap-2 py-1"> <div class="ml-1 -mr-1 flex-none flex items-center"><div class='inline-block flex-none mr-1'><a target='_self' href='/team/toronto-maple-leafs'><img class='flex-none logo-sm my-0 ' src='https://static.puckpedia.com/logos/8-sm@2.webp' alt='Maple Leafs logo.'/></a></div></div>
<div class="flex-none text-center my-auto w-[28px] text-pp-copy_lt"><div class='text-center'><div class='font-extrabold text-[11px] tracking-widest'>17</div><div class='uppercase font-bold tracking-tight text-[11px]'>Apr</div></div></div>
<div class="relative flex justify-between items-center w-full"> <div class="text-pp-copy_dk font-bold text-sm2 mb-0.5"><a class="pp_link after:absolute after:inset-0 text-pp-copy_dk line-clamp-1" href="/player/michael-pezzetta">Pezzetta, Michael</a></div>
<div class="flex gap-1 items-center shrink-0 pr-2 font-bold text-pp-copy_lt text-xs uppercase text-right">
<div class="font-bold text-pp-copy_lt text-xs uppercase">Cleared</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="mb-6 flex gap-4 py-1 items-center font-bold uppercase tracking-wider text-sm">
<a href="/transactions" class="pp_link"><i class="fas fa-up-down"></i> All Transactions</a>
<a href="/injuries" class="pp_link"><i class="fad fa-suitcase-medical"></i> Injuries</a>
<a href="/news" class="pp_link"><i class="fad fa-newspaper"></i> News</a>
</div>
</div>
<div class="lg:w-[308px]"> <div class="hidden lg:block mb-6">
<div>
<h3 class="mb-2">Latest from PuckPedia</h3>
<a href="/news/2026-ncaa-draft-related-unrestricted-free-agents" class="group flex flex-col !no-underline" onclick="window.gtag('event', 'news-preview-item-click', {})">
<div class="mb-2 aspect-video w-full overflow-hidden rounded-md bg-pp-bg_lt">
<img
class="h-full w-full object-cover"
src="/sites/default/files/styles/news_banner/public/2026-06/USATSI_25733877.jpg?h=68630180&itok=1Tf_ssm5"
alt=""
loading="lazy"
onerror="this.onerror=null; this.src='https://cdn.puckpedia.com/s/assets/puckpedia.svg';"
/>
</div>
<div class="text-base font-bold leading-[1.2] text-pp-copy_dk line-clamp-3 group-hover:underline">
2026 NCAA draft-related unrestricted free agents
</div>
</a>
</div>
</div>
<div>
<div class="mb-6">
<h3>Today's Trivia</h3>
<ul class="pt-3 flex flex-col gap-2">
<li>
<a class="group border border-pp-border bg-white dark:bg-slate-900 rounded-lg px-2.5 py-2 min-h-12 flex items-center gap-3 transition-colors duration-150 hover:bg-slate-50 dark:hover:bg-slate-800 hover:border-slate-300 dark:hover:border-slate-600" href="https://www.puckdoku.com" target="_blank" rel="noopener" onclick="window.gtag('event', 'trivia-puckdoku-click', { game_number: 1147 })">
<div class="w-8 h-8 rounded-md flex items-center justify-center overflow-hidden">
<img src="https://cdn.puckpedia.com/s/assets/puckdoku-trivia.svg" class="w-7 h-7 object-contain dark:invert" alt="Puckdoku icon">
</div>
<div class="flex-1 min-w-0">
<div class="flex items-center gap-1.5 text-base font-semibold leading-tight">
<span>Puckdoku</span>
</div>
<div class="mt-0.5 text-xs text-pp-copy_lt leading-tight">Game #1147</div>
</div>
<i class="fas fa-chevron-right text-xs text-pp-copy_lt opacity-60 transition-opacity duration-150 group-hover:opacity-90"></i>
</a>
</li>
<li>
<a class="group border border-pp-border bg-white dark:bg-slate-900 rounded-lg px-2.5 py-2 min-h-12 flex items-center gap-3 transition-colors duration-150 hover:bg-slate-50 dark:hover:bg-slate-800 hover:border-slate-300 dark:hover:border-slate-600" href="https://www.puckdoku.com/pyramid" target="_blank" rel="noopener" onclick="window.gtag('event', 'trivia-pyramid-click', { game_number: 119 })">
<div class="w-8 h-8 rounded-md flex items-center justify-center ">
<img src="https://cdn.puckpedia.com/s/assets/pyramid-trivia.svg" class="w-7 h-7 object-contain dark:invert" alt="Pyramid icon">
</div>
<div class="flex-1 min-w-0">
<div class="flex items-center gap-1.5 text-base font-semibold leading-tight">
<span>Pyramid</span>
</div>
<div class="mt-0.5 text-xs text-pp-copy_lt leading-tight">Game #119</div>
</div>
<i class="fas fa-chevron-right text-xs text-pp-copy_lt opacity-60 transition-opacity duration-150 group-hover:opacity-90"></i>
</a>
</li>
<li>
<a class="group border border-pp-border bg-white dark:bg-slate-900 rounded-lg px-2.5 py-2 min-h-12 flex items-center gap-3 transition-colors duration-150 hover:bg-slate-50 dark:hover:bg-slate-800 hover:border-slate-300 dark:hover:border-slate-600" href="https://www.puckdoku.com/puck-buddies" target="_blank" rel="noopener" onclick="window.gtag('event', 'trivia-puck-buddies-click', { game_number: 96 })">
<div class="w-8 h-8 rounded-md flex items-center justify-center ">
<img src="https://cdn.puckpedia.com/s/assets/puck-buddies-trivia.svg" class="w-7 h-7 object-contain dark:invert" alt="Puck Buddies icon">
</div>
<div class="flex-1 min-w-0">
<div class="flex items-center gap-1.5 text-base font-semibold leading-tight">
<span>Puck Buddies</span>
<span class="inline-flex items-center px-1.5 py-[1px] text-[9px] font-semibold uppercase tracking-wider rounded bg-rose-50 text-rose-600 dark:bg-rose-500/15 dark:text-rose-300 leading-none">New</span>
</div>
<div class="mt-0.5 text-xs text-pp-copy_lt leading-tight">Game #96</div>
</div>
<i class="fas fa-chevron-right text-xs text-pp-copy_lt opacity-60 transition-opacity duration-150 group-hover:opacity-90"></i>
</a>
</li>
</ul>
</div>
</div>
<div class="hidden lg:block pp_layout_sidebar_sticky sidebar_sticky_subnav">
<div>
<div class="pp_ad-box pp_ad-dsk">
<div class="pp_adtitle_container w-full px-4">
<div class="leading-none">Advertisement</div>
<div class="leading-none underline cursor-pointer" data-toggle="popover" data-tippy-trigger="click" data-title="No More Ads"
data-content="Upgrade to PuckPedia+ for an ad-free experience. <br /> <a href='/puckpedia-plus?ref=ad_cta' target='_blank' class='pp_btn-sm my-2 mt-2'>Learn More</a>">
Remove Ads
</div>
</div>
<div class="ad_inner" id="dsk-box-ad-h" tpd-dont-inject="true"></div> </div>
</div>
</div>
</div>
</div>
</div> </div>
<div class="my-6">
<div>
<div class="news-carousel">
<div class="mb-4 flex justify-between items-baseline gap-1">
<h3 class="!mb-0">NHL News</h3>
<a href="/news" class="pp_link pp_link-alltext" onclick="window.gtag('event', 'news-carousel-more-click', {})">More News<i class="fas fa-chevron-right"></i></a>
</div>
<div class="flex gap-4 overflow-x-auto snap-x snap-mandatory scroll-smooth pb-2 pe-4 pp_scrollbar md:grid md:grid-cols-3 md:overflow-visible md:snap-none md:pe-0 md:pb-0">
<a href="https://dailyfaceoff.com/news/top-five-nhl-teams-got-weaker-regression-offseason-2026-27-ducks-sabres-stars-golden-knights-avalanche" class="group flex w-[78vw] max-w-[320px] shrink-0 snap-start flex-col !no-underline md:w-auto md:max-w-none md:shrink" target="_blank" rel="noopener" referrerpolicy="no-referrer-when-downgrade" onclick="window.gtag('event', 'news-carousel-external-click', { position: 1, source: 'Daily\u0020Faceoff' })">
<div class="relative mb-2 aspect-video w-full overflow-hidden rounded-md bg-pp-bg_lt">
<img
class="h-full w-full object-cover"
src="https://publish.dailyfaceoff.com/wp-content/uploads/2026/08/2026-03-11T005532Z_193617396_MT1USATODAY28457303_RTRMADP_3_NHL-VEGAS-GOLDEN-KNIGHTS-AT-DALLAS-STARS-scaled.jpg"
alt=""
loading="lazy"
onerror="this.onerror=null; this.src='https://cdn.puckpedia.com/s/assets/puckpedia.svg';"
/>
<div class="absolute bottom-0 end-0 flex items-center gap-1 rounded-ss-md bg-black/70 px-1.5 py-0.5 text-xs font-bold uppercase tracking-wide text-white">
Daily Faceoff<i class="fas fa-chevron-right"></i>
</div>
</div>
<div class="text-base font-bold leading-[1.2] text-pp-copy_dk line-clamp-3 group-hover:underline">
Five NHL teams that look noticeably weaker going into 2026-27
</div>
</a>
<a href="/news/how-macklin-celebrinis-record-extension-lets-him-cash-now-and-later" class="group flex w-[78vw] max-w-[320px] shrink-0 snap-start flex-col !no-underline md:w-auto md:max-w-none md:shrink" onclick="window.gtag('event', 'news-carousel-item-click', { position: 2 })">
<div class="relative mb-2 aspect-video w-full overflow-hidden rounded-md bg-pp-bg_lt">
<img
class="h-full w-full object-cover"
src="/sites/default/files/styles/news_banner/public/2026-07/celebrini.jpg?h=4233ef75&itok=3E5LVlpR"
alt=""
loading="lazy"
onerror="this.onerror=null; this.src='https://cdn.puckpedia.com/s/assets/puckpedia.svg';"
/>
</div>
<div class="text-base font-bold leading-[1.2] text-pp-copy_dk line-clamp-3 group-hover:underline">
How Macklin Celebrini's record extension lets him cash in now, and later
</div>
</a>
<a href="/news/meet-puckpedia-ai-your-new-favorite-nhl-salary-cap-and-cba-assistant" class="group flex w-[78vw] max-w-[320px] shrink-0 snap-start flex-col !no-underline md:w-auto md:max-w-none md:shrink" onclick="window.gtag('event', 'news-carousel-item-click', { position: 3 })">
<div class="relative mb-2 aspect-video w-full overflow-hidden rounded-md bg-pp-bg_lt">
<img
class="h-full w-full object-cover"
src="/sites/default/files/styles/news_banner/public/2026-07/pets.jpg?h=a5b60f5b&itok=ShanAdPC"
alt=""
loading="lazy"
onerror="this.onerror=null; this.src='https://cdn.puckpedia.com/s/assets/puckpedia.svg';"
/>
</div>
<div class="text-base font-bold leading-[1.2] text-pp-copy_dk line-clamp-3 group-hover:underline">
Meet PuckPedia AI: Your new favorite NHL salary cap and CBA assistant
</div>
</a>
</div>
</div>
</div>
</div>
</div></div>
</div></section>
<div>
<div class="pp_ad-fullwidth pp_ad-dsk">
<div class="pp_adtitle">Advertisement</div>
<div class="ad_inner" id="dsk-banner-ad-d"></div> </div>
</div>
<section class="pp_outerwrap">
<div class="pp_innerwrap">
<div class="pp_layout_wrapper"> <div class="pp_layout_main">
<h3 id="free-agents" class="scroll-mt-[80px]"></h3>
<div class="grid grid-cols-1 lg:grid-cols-2 mb-8 gap-4 lg:gap-8 xl:gap-12">
<div class="lg:order-last">
<div>
<div x-data="dashboardResultsMini_2({ filters: {"sortBy":"cap_hit","sortDirection":"DESC","curPage":1,"pageSize":100,"focus_season":{"label":"2025-2026","value":"162"},"player_role":{"label":"Skaters","value":"1"},"stat_season":{"label":"2025-2026","value":"162"},"filters_g1":{},"filters_g2":{},"filters_g3":{"contract_yrs_left":{"type":"range","label":"Years Remaining","value":[0,0],"value_text":"0"},"contract_next":{"type":"checkboxlist","label":"Next Contract Signed","value":["0"],"value_text":["No"]},"contract_expiry":["ufa","ufa_no_qo","ufa_group6"]},"filters_g4":{"stats_gp":{"type":"range","label":"GP","value":[1,82],"value_text":"1-82"}},"filters_g5":{},"filters_g6":{}}, pageSize: 10 })">
<div class="relative mt-4 mb-1 flex justify-between items-baseline gap-1 ml-1">
<h3 class="items-center"><i class="fad fa-chart-simple"></i><a href="/players">Player Dashboard</a> <i class="fas fa-caret-right"></i><span class="text-[14px] text-pp-copy_lt">2026 UFAs & RFAs</span></h3>
</div>
<div class="flex items-center mt-4 mb-2">
<div class="pp_tabnav pp_tabnav-noddl pp_tabnav-full_width">
<div class="pp_tabnav_wrapper">
<nav id="summary-tabs" class="isolate inline-flex" aria-label="Tabs">
<a href="#" class="active" :class="{'active':tab=='ufa'}" @click.prevent="updateTabs('ufa')">
<span>UFA</span>
</a>
<a href="#" :class="{'active':tab=='rfa'}" @click.prevent="updateTabs('rfa')">
<span>RFA</span>
</a>
</nav>
</div>
</div>
<div class="ml-auto">
<div id="cb1" x-data="checkboxlist({elementId:'cb1', title: '', group: '', savedValue: ''})" class="flex gap-1 flex-wrap">
<label
for="cb1_0"
class="whitespace-nowrap db_label inline-flex cursor-pointer items-center justify-between rounded-full gap-3 border border-slate-300 pl-2 pr-3 py-2 dark:border-slate-600 dark:bg-slate-800 dark:text-slate-300 text-slate-400 [&:has(input:checked)]:text-pp-brand_bluedark:[&:has(input:checked)]:text-white [&:has(input:disabled)]:opacity-75 [&:has(input:disabled)]:cursor-not-allowed">
<div class="relative flex items-center">
<input id="cb1_0" data-text="FWD" type="checkbox" value="FWD" @click="updateFilter('cb1')"
class="before:content[''] peer relative size-4 cursor-pointer appearance-none overflow-hidden rounded-full border border-slate-300 bg-white before:absolute before:inset-0 checked:border-pp-border_blue checked:before:bg-pp-brand_blue focus:outline focus:outline-2 focus:outline-offset-2 focus:outline-slate-800 checked:focus:outline-pp-border_blue active:outline-offset-0 disabled:cursor-not-allowed dark:border-slate-700 dark:bg-slate-900 dark:checked:border-pp-border_blue dark:checked:before:bg-blue-600 dark:focus:outline-slate-300 dark:checked:focus:outline-blue-600" checked />
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" stroke="currentColor" fill="none" stroke-width="4" class="pointer-events-none invisible absolute left-1/2 top-1/2 size-3 -translate-x-1/2 -translate-y-1/2 text-slate-100 peer-checked:visible dark:text-slate-100">
<path stroke-linecap="round" stroke-linejoin="round" d="M4.5 12.75l6 6 9-13.5"/>
</svg>
</div>
<span>FWD</span>
</label>
<label
for="cb1_1"
class="whitespace-nowrap db_label inline-flex cursor-pointer items-center justify-between rounded-full gap-3 border border-slate-300 pl-2 pr-3 py-2 dark:border-slate-600 dark:bg-slate-800 dark:text-slate-300 text-slate-400 [&:has(input:checked)]:text-pp-brand_bluedark:[&:has(input:checked)]:text-white [&:has(input:disabled)]:opacity-75 [&:has(input:disabled)]:cursor-not-allowed">
<div class="relative flex items-center">
<input id="cb1_1" data-text="D" type="checkbox" value="d" @click="updateFilter('cb1')"
class="before:content[''] peer relative size-4 cursor-pointer appearance-none overflow-hidden rounded-full border border-slate-300 bg-white before:absolute before:inset-0 checked:border-pp-border_blue checked:before:bg-pp-brand_blue focus:outline focus:outline-2 focus:outline-offset-2 focus:outline-slate-800 checked:focus:outline-pp-border_blue active:outline-offset-0 disabled:cursor-not-allowed dark:border-slate-700 dark:bg-slate-900 dark:checked:border-pp-border_blue dark:checked:before:bg-blue-600 dark:focus:outline-slate-300 dark:checked:focus:outline-blue-600" checked />
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" stroke="currentColor" fill="none" stroke-width="4" class="pointer-events-none invisible absolute left-1/2 top-1/2 size-3 -translate-x-1/2 -translate-y-1/2 text-slate-100 peer-checked:visible dark:text-slate-100">
<path stroke-linecap="round" stroke-linejoin="round" d="M4.5 12.75l6 6 9-13.5"/>
</svg>
</div>
<span>D</span>
</label>
<label
for="cb1_2"
class="whitespace-nowrap db_label inline-flex cursor-pointer items-center justify-between rounded-full gap-3 border border-slate-300 pl-2 pr-3 py-2 dark:border-slate-600 dark:bg-slate-800 dark:text-slate-300 text-slate-400 [&:has(input:checked)]:text-pp-brand_bluedark:[&:has(input:checked)]:text-white [&:has(input:disabled)]:opacity-75 [&:has(input:disabled)]:cursor-not-allowed">
<div class="relative flex items-center">
<input id="cb1_2" data-text="GOAL" type="checkbox" value="g" @click="updateFilter('cb1')"
class="before:content[''] peer relative size-4 cursor-pointer appearance-none overflow-hidden rounded-full border border-slate-300 bg-white before:absolute before:inset-0 checked:border-pp-border_blue checked:before:bg-pp-brand_blue focus:outline focus:outline-2 focus:outline-offset-2 focus:outline-slate-800 checked:focus:outline-pp-border_blue active:outline-offset-0 disabled:cursor-not-allowed dark:border-slate-700 dark:bg-slate-900 dark:checked:border-pp-border_blue dark:checked:before:bg-blue-600 dark:focus:outline-slate-300 dark:checked:focus:outline-blue-600" checked />
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" stroke="currentColor" fill="none" stroke-width="4" class="pointer-events-none invisible absolute left-1/2 top-1/2 size-3 -translate-x-1/2 -translate-y-1/2 text-slate-100 peer-checked:visible dark:text-slate-100">
<path stroke-linecap="round" stroke-linejoin="round" d="M4.5 12.75l6 6 9-13.5"/>
</svg>
</div>
<span>GOAL</span>
</label>
</div>
</div>
</div>
<div x-data x-show="loading" class="flex justify-center items-center h-48 w-full" x-cloak>
<div class="relative inline-flex">
<div class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 opacity-75 rounded-full"></div>
<div class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 rounded-full absolute top-0 left-0 animate-ping"></div>
<div class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 rounded-full absolute top-0 left-0 animate-pulse"></div>
</div>
</div>
<div x-show="!loading" class="p-1 border border-pp-border rounded-lg">
<template x-for="player in players">
<div class="flex items-center py-1.5 border-b border-pp-border last:border-b-0">
<div class="flex-none mx-2">
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300" :href="`/team/${player.team_url}`">
<img loading="lazy" class="logo-sm"
:src="'https://cdn.puckpedia.com/s/assets/logos/' + (player.team_id ?? '0') + '-sm@2.webp'" />
</a>
</div>
<div>
<div class="text-pp-copy_dk font-bold text-sm2 line-clamp-1">
<a class="pp_link group-hover:text-blue-500 dark:group-hover:text-blue-300" :href="`/player/${player.p_url}`">
<span x-text="`${player.p_fn} ${player.p_ln}`"></span>
</a>
</div>
<div class="text-pp-copy_lt pp_content text-sm mt-0.5 flex">
<div>
<span class="text-xxs uppercase">age</span><span class="font-bold ml-0.5" x-text="`${player.age}`"></span>
<span class="text-xxs uppercase">pos</span><span class="font-bold ml-0.5" x-text="`${player.pos}`"></span></div>
</div>
</div>
<div class="text-right ml-auto mr-2">
<div class="text-pp-copy font-bold text-base"><span x-text="formatContractValue(player.cap_hit)"></span><span class="text-xxs ml-0.5">AAV</span></div>
</div>
</div>
</template>
</div>
<div class="mt-2 flex justify-between items-center mini-footer font-sans">
<div class="flex gap-2 sm:gap-4">
<div class="text-sm text-slate-700 dark:text-slate-200">
<span class="font-semibold" x-text="((curPage - 1) * pageSize) + 1">1</span>
to
<span class="font-semibold" x-text="Math.min((curPage * pageSize), total)">1</span>
of
<span class="font-semibold" x-text="total">1</span>
results
</div>
<div>
<button :disabled="curPage <= 1" :class="curPage <= 1 ? 'opacity-25' : ''" class="ml-4 mr-2"
@click="updatePage(curPage - 1)">
<i class="fad fa-angle-left"></i>
</button>
<button :disabled="curPage >= Math.ceil(total / pageSize)"
:class="curPage >= Math.ceil(total / pageSize) ? 'opacity-25' : ''"
@click="updatePage(curPage + 1)">
<i class="fad fa-angle-right"></i>
</button>
</div>
</div>
<a class="pp_btn pp_btn-sm" x-bind:href="'/players/search?q=' + morelink_search_code">View <span class="hidden sm:inline">
All </span><span x-text="morelink_text"></span></a>
</div>
</div>
<script>
document.addEventListener("alpine:init", () => {
const DEFAULT_FILTERS = {
player_active: ["1"],
bio_pos: ["lw", "c", "rw", "d", "g"],
bio_shot: ["left", "right"],
bio_undrafted: ["1"],
include_retired: ["1"],
contract_level: ["entry_level", "standard_level"],
contract_next: ["0"],
include_buyouts: [],
contract_clauses: ["", "NMC", "NTC", "M-NTC"],
contract_start_year: "",
contract_signing_status: ["", "rfa", "rfa_arb", "ufa", "ufa_no_qo", "ufa_group6"],
contract_expiry: ["ufa", "ufa_no_qo", "ufa_group6"],
contract_arb: ["1", "0"],
contract_structure: ["1way", "2way"],
};
Alpine.data('dashboardResultsMini_2', (params) => ({
layoutType: params.layout_type,
includeTeam: params.include_team,
title: params.title,
filters: { ...params.filters, },
pageSize: params.pageSize,
curPage: 1,
total: 0,
players: [],
loading: true,
tab: 'ufa',
morelink_text: "UFAs",
morelink_search_code: "2025-26-ufa",
init() {
if (this.filters) {
this.getData();
}
},
get search() {
const mapGroupFilters = (filterGroup) => {
return Object.keys(filterGroup || {}).reduce((acc, key) => {
const filter = filterGroup[key];
if ("value" in filter) {
acc[key] = filter.value;
} else {
acc[key] = filter;
}
return acc;
}, {});
};
return {
...DEFAULT_FILTERS,
sortBy: this.filters.sortBy,
sortDirection: this.filters.sortDirection,
pageSize: this.pageSize,
curPage: this.curPage,
focus_season: this.filters.focus_season.value,
player_role: this.filters.player_role.value,
stat_season: this.filters.stat_season.value,
...mapGroupFilters(this.filters.filters_g1),
...mapGroupFilters(this.filters.filters_g2),
...mapGroupFilters(this.filters.filters_g3),
...mapGroupFilters(this.filters.filters_g4),
...mapGroupFilters(this.filters.filters_g5),
...mapGroupFilters(this.filters.filters_g6),
};
},
async getData() {
this.loading = true;
let json = undefined;
try {
const response = await fetch("/players/api?q=" + JSON.stringify(this.search));
json = await response.json();
} catch (error) {
if (error instanceof SyntaxError) {
console.log("There was a SyntaxError", error);
} else {
console.log("There was an error", error);
}
}
if (!json) {
return;
}
this.players = json.data.p;
this.total = json.data.meta.count;
this.loading = false
},
updatePage(newPage) {
this.curPage = newPage;
this.getData();
},
formatContractValue(value) {
// if (value >= 1e6) {
// return (
// new Intl.NumberFormat("en-US", {
// style: "currency",
// currency: "USD",
// minimumFractionDigits: 2,
// maximumFractionDigits: 2,
// }).format(value / 1e6) + "M"
// );
// } else if (value >= 1e3) {
// return (
// new Intl.NumberFormat("en-US", {
// style: "currency",
// currency: "USD",
// minimumFractionDigits: 0,
// maximumFractionDigits: 0,
// }).format(value / 1e3) + "k"
// );
// }
return new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
minimumFractionDigits: 0,
maximumFractionDigits: 0,
}).format(value);
},
updateTabs(tab) {
this.tab = tab;
if(this.tab == "ufa") {
this.filters.filters_g3.contract_expiry = ["ufa", "ufa_no_qo", "ufa_group6"];
this.morelink_search_code = "2025-26-ufa";
this.morelink_text = "UFAs";
} else {
this.filters.filters_g3.contract_expiry = ["rfa","rfa_arb"];
this.morelink_search_code = "2025-26-rfa";
this.morelink_text = "RFAs";
}
this.curPage = 1; //always reset to page 1
this.getData();
},
updateFilter(filter_id) {
selected =[];
const options = document.getElementById(filter_id).getElementsByTagName("input");
for (let i = 0; i < options.length; i++) {
if (options[i].checked) {
if(options[i].value=='FWD') {
selected.push('lw');
selected.push('rw');
selected.push('c');
} else {
selected.push(options[i].value);
}
}
}
//console.log(JSON.stringify(selected));
// bio_pos: ["lw", "c", "rw", "d"],
this.filters.filters_g2.bio_pos = selected;
this.curPage = 1; //always reset to page 1
this.getData();
},
}))
});
</script>
</div>
</div>
<div class="lg:order-first">
<div>
<div class="relative mt-4 mb-1 flex justify-between items-baseline gap-1 ml-1">
<h3 class="items-center"><i class="fad fa-chart-simple"></i><a href="/players">Player Dashboard</a> <i class="fas fa-caret-right"></i><span class="text-[14px] text-pp-copy_lt">NHL Leaders</span></h3>
<a href="/players" class="pp_link pp_link-alltext hidden" data-linked="s1">All Players<i
class='fas fa-chevron-right'></i></a>
</div>
<div x-data="{ tab: 'skaters' }">
<div data-tab_for="t1" data-js="tab_wrapper" class="pp_tabnav pp_tabnav-noddl pp_tabnav-full_width mt-4 mb-2">
<div data-js="tabs" class="pp_tabnav_wrapper">
<nav id="summary-tabs" class="isolate inline-flex" aria-label="Tabs">
<a href="#" data-tab="1" class="active" :class="tab === 'skaters' ? 'active' : ''"
@click="tab = 'skaters'">
<span>Skaters</span>
</a>
<a href="#" data-tab="2" :class="tab === 'goalies' ? 'active' : ''" @click="tab = 'goalies'">
<span>Goalies</span>
</a>
</nav>
</div>
</div>
<div x-cloak x-show="tab === 'skaters'"
x-data="dashboardPreviewBlock({ title: '25-26 Scoring Leaders', filters: {"sortBy":"st_p","sortDirection":"DESC","curPage":1,"pageSize":100,"focus_season":{"label":"2025-2026","value":"162"},"player_role":{"label":"Skaters","value":"1"},"stat_season":{"label":"2025-2026","value":"162"},"filters_g1":{},"filters_g2":{},"filters_g3":{},"filters_g4":{},"filters_g5":{},"filters_g6":{}}, pageSize: 10, include_team: true })">
<div class="pp_table-wrapper p-1 border border-pp-border rounded-lg">
<div x-data x-show="loading" class="flex justify-center items-center h-48 w-full" x-cloak>
<div class="relative inline-flex">
<div class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 opacity-75 rounded-full"></div>
<div
class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 rounded-full absolute top-0 left-0 animate-ping">
</div>
<div
class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 rounded-full absolute top-0 left-0 animate-pulse">
</div>
</div>
</div>
<table x-show="!loading" class="w-full pp_table pp_table-striped pp_table-dashboard-mini table-fixed">
<thead>
<tr class="h-[48px]">
<th :class="getSortableColClasses('p_ln')" @click="updateSort('p_ln', 'ASC')"><span
x-text="formatSeason(filters.stat_season)"></span> <span class="text-base">2025-26
Leaders</span></th>
<th class="w-[40px]" :class="getSortableColClasses('st_p')" @click="updateSort('st_p')">P</th>
<th class="w-[35px]" :class="getSortableColClasses('st_g')" @click="updateSort('st_g')">G</th>
<th class="w-[45px]" :class="getSortableColClasses('st_ppg')" @click="updateSort('st_ppg')">P/GP
</th>
<th class="w-[65px]" :class="getSortableColClasses('cap_hit')" @click="updateSort('cap_hit')">
Cap
Hit</th>
</tr>
</thead>
<tbody class="divide-y divide-slate-200 dark:divide-slate-700">
<template x-for="player in players">
<tr class="group cursor-pointer" @click="window.location.href = `/player/${player.p_url}`">
<td class="ellipsis flex items-center">
<a class="pp_link flex items-center text-sm2 text-pp-copy group-hover:text-blue-500 dark:group-hover:text-blue-300"
:href="`/player/${player.p_url}`">
<img x-show="includeTeam" loading="lazy" class="w-5 mr-1"
:src="'https://cdn.puckpedia.com/s/assets/logos/' + player.team_id + '-sm@2.webp'" />
<span x-text="`${player.p_fn} ${player.p_ln}`"></span>
</a>
</td>
<td :class="filters.sortBy==='st_p' ? 'font-bold' : ''" x-text="player.st_p"></td>
<td :class="filters.sortBy==='st_g' ? 'font-bold' : ''" x-text="player.st_g"></td>
<td :class="filters.sortBy==='st_ppg' ? 'font-bold' : ''" x-text="player.st_ppg"></td>
<td :class="filters.sortBy==='cap_hit' ? 'font-bold' : ''"
x-text="formatContractValue(player.cap_hit)"></td>
</tr>
</template>
</tbody>
</table>
</div>
<div class="mt-2 flex justify-between items-center mini-footer font-sans">
<div class="flex gap-2 sm:gap-4">
<div class="text-sm text-slate-700 dark:text-slate-200">
<span class="font-semibold" x-text="((curPage - 1) * pageSize) + 1">1</span>
to
<span class="font-semibold" x-text="Math.min((curPage * pageSize), total)">10</span>
of
<span class="font-semibold" x-text="total">97</span>
results
</div>
<div>
<button :disabled="curPage <= 1" :class="curPage <= 1 ? 'opacity-25' : ''" class="ml-4 mr-2"
@click="updatePage(curPage - 1)">
<i class="fad fa-angle-left"></i>
</button>
<button :disabled="curPage >= Math.ceil(total / pageSize)"
:class="curPage >= Math.ceil(total / pageSize) ? 'opacity-25' : ''"
@click="updatePage(curPage + 1)">
<i class="fad fa-angle-right"></i>
</button>
</div>
</div>
<a class="pp_btn pp_btn-sm" href="/players/search?q=2025-26-leaders">View <span
class="hidden sm:inline">
All </span>Players</a>
</div>
</div>
<div x-cloak x-show="tab === 'goalies'"
x-data="dashboardPreviewBlock({ title: '25-26 Goalie Leaders', filters: {"sortBy":"st_svp","sortDirection":"DESC","curPage":1,"pageSize":100,"focus_season":{"label":"2025-2026","value":"162"},"player_role":{"label":"Goalies","value":"0"},"stat_season":{"label":"2025-2026","value":"162"},"filters_g1":{},"filters_g2":{},"filters_g3":{},"filters_g4":{},"filters_g5":{},"filters_g6":{}}, pageSize: 10, include_team: true })">
<div class="pp_table-wrapper p-1 border border-pp-border rounded-lg">
<div x-data x-show="loading" class="flex justify-center items-center h-48 w-full" x-cloak>
<div class="relative inline-flex">
<div class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 opacity-75 rounded-full"></div>
<div
class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 rounded-full absolute top-0 left-0 animate-ping">
</div>
<div
class="w-10 h-10 bg-pp-brand_blue dark:bg-blue-800 rounded-full absolute top-0 left-0 animate-pulse">
</div>
</div>
</div>
<table x-show="!loading" class="w-full pp_table pp_table-striped pp_table-dashboard-mini table-fixed">
<thead>
<tr class="h-[48px]">
<th :class="getSortableColClasses('p_ln')" @click="updateSort('p_ln', 'ASC')"><span
x-text="formatSeason(filters.stat_season)"></span> <span class="text-base">2024-25
Leaders</span></th>
<th class="w-[55px]" :class="getSortableColClasses('st_svp')" @click="updateSort('st_svp')">SV%
</th>
<th class="w-[35px]" :class="getSortableColClasses('st_gaa')" @click="updateSort('st_gaa')">GAA
</th>
<th class="w-[30px]" :class="getSortableColClasses('st_w')" @click="updateSort('st_w')">W
</th>
<th class="w-[65px]" :class="getSortableColClasses('cap_hit')" @click="updateSort('cap_hit')">
Cap
Hit</th>
</tr>
</thead>
<tbody class="divide-y divide-slate-200 dark:divide-slate-700">
<template x-for="player in players">
<tr class="group cursor-pointer" @click="window.location.href = `/player/${player.p_url}`">
<td class="ellipsis flex items-center">
<a class="pp_link flex items-center text-sm2 text-pp-copy group-hover:text-blue-500 dark:group-hover:text-blue-300"
:href="`/player/${player.p_url}`">
<img x-show="includeTeam" loading="lazy" class="w-5 mr-1"
:src="'https://cdn.puckpedia.com/s/assets/logos/' + player.team_id + '-sm@2.webp'" />
<span x-text="`${player.p_fn} ${player.p_ln}`"></span>
</a>
</td>
<td :class="filters.sortBy==='st_svp' ? 'font-bold' : ''" x-text="player.st_svp"></td>
<td :class="filters.sortBy==='st_gaa' ? 'font-bold' : ''" x-text="player.st_gaa"></td>
<td :class="filters.sortBy==='st_w' ? 'font-bold' : ''" x-text="player.st_w"></td>
<td :class="filters.sortBy==='cap_hit' ? 'font-bold' : ''"
x-text="formatContractValue(player.cap_hit)"></td>
</tr>
</template>
</tbody>
</table>
</div>
<div class="mt-2 flex justify-between items-center mini-footer font-sans">
<div class="flex gap-2 sm:gap-4">
<div class="text-sm text-slate-700 dark:text-slate-200">
<span class="font-semibold" x-text="((curPage - 1) * pageSize) + 1">1</span>
to
<span class="font-semibold" x-text="Math.min((curPage * pageSize), total)">10</span>
of
<span class="font-semibold" x-text="total">97</span>
results
</div>
<div>
<button :disabled="curPage <= 1" :class="curPage <= 1 ? 'opacity-25' : ''" class="ml-4 mr-2"
@click="updatePage(curPage - 1)">
<i class="fad fa-angle-left"></i>
</button>
<button :disabled="curPage >= Math.ceil(total / pageSize)"
:class="curPage >= Math.ceil(total / pageSize) ? 'opacity-25' : ''"
@click="updatePage(curPage + 1)">
<i class="fad fa-angle-right"></i>
</button>
</div>
</div>
<a class="pp_btn pp_btn-sm" href="/players/search?q=2025-26-goalies">View <span
class="hidden sm:inline">
All </span>Goalies</a>
</div>
</div>
</div>
<script>
document.addEventListener("alpine:init", () => {
const DEFAULT_FILTERS = {
player_active: ["1"],
bio_pos: ["lw", "c", "rw", "d"],
bio_shot: ["left", "right"],
bio_undrafted: ["1"],
include_retired: ["1"],
contract_level: ["entry_level", "standard_level"],
contract_next: ["0", "1"],
include_buyouts: [],
contract_clauses: ["", "NMC", "NTC", "M-NTC"],
contract_start_year: "",
contract_signing_status: ["", "rfa", "rfa_arb", "ufa", "ufa_no_qo", "ufa_group6"],
contract_expiry: ["rfa", "rfa_arb", "ufa", "ufa_no_qo", "ufa_group6"],
contract_arb: ["1", "0"],
contract_structure: ["1way", "2way"],
};
Alpine.data('dashboardPreviewBlock', (params) => ({
includeTeam: params.include_team,
title: params.title,
filters: { ...params.filters, },
pageSize: params.pageSize,
curPage: 1,
total: 0,
players: [],
loading: true,
init() {
if (this.filters) {
this.getData();
}
},
get search() {
const mapGroupFilters = (filterGroup) => {
return Object.keys(filterGroup || {}).reduce((acc, key) => {
const filter = filterGroup[key];
if ("value" in filter) {
acc[key] = filter.value;
} else {
acc[key] = filter;
}
return acc;
}, {});
};
return {
...DEFAULT_FILTERS,
sortBy: this.filters.sortBy,
sortDirection: this.filters.sortDirection,
pageSize: this.pageSize,
curPage: this.curPage,
focus_season: this.filters.focus_season.value,
player_role: this.filters.player_role.value,
stat_season: this.filters.stat_season.value,
...mapGroupFilters(this.filters.filters_g1),
...mapGroupFilters(this.filters.filters_g2),
...mapGroupFilters(this.filters.filters_g3),
...mapGroupFilters(this.filters.filters_g4),
...mapGroupFilters(this.filters.filters_g5),
...mapGroupFilters(this.filters.filters_g6),
};
},
async getData() {
this.loading = true;
let json = undefined;
try {
const response = await fetch("/players/api?q=" + JSON.stringify(this.search));
json = await response.json();
} catch (error) {
if (error instanceof SyntaxError) {
console.log("There was a SyntaxError", error);
} else {
console.log("There was an error", error);
}
}
if (!json) {
return;
}
this.players = json.data.p;
this.total = json.data.meta.count;
this.loading = false
},
updatePage(newPage) {
this.curPage = newPage;
this.getData();
},
updateSort(sortKey, defaultDirection = 'DESC') {
this.curPage = 1;
if (this.filters.sortBy === sortKey) {
this.filters.sortDirection = this.filters.sortDirection === 'ASC' ? 'DESC' : 'ASC';
} else {
this.filters.sortBy = sortKey;
this.filters.sortDirection = defaultDirection;
}
this.getData();
},
getSortableColClasses(col) {
const classes = ["sortable"];
if (this.activeSorting === col) {
classes.push("sorting");
} else if (this.filters.sortBy === col) {
classes.push(`tablesorter-header${this.filters.sortDirection === 'ASC' ? 'Asc' : 'Desc'}`);
}
return classes.join(" ");
},
formatSeason(value) {
switch (value) {
case "159":
return "2022-23";
case "160":
return "2023-24";
case "161":
return "2024-25";
case "162":
return "2025-26";
case "163":
return "2026-27";
}
},
formatContractValue(value) {
if (value >= 1e6) {
return (
new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
minimumFractionDigits: 2,
maximumFractionDigits: 2,
}).format(value / 1e6) + "M"
);
} else if (value >= 1e3) {
return (
new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
minimumFractionDigits: 0,
maximumFractionDigits: 0,
}).format(value / 1e3) + "k"
);
}
return new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
minimumFractionDigits: 2,
maximumFractionDigits: 2,
}).format(value);
},
}))
});
</script>
</div>
</div>
</div>
</div>
<div class="pp_layout_sidebar">
<div>
<h3 class="mt-4"><a href="/agents/" data-linked="s3">Agent Leaderboard</a></h3><div class="mt-4 pp_table-wrapper p-1 border border-pp-border rounded-lg">
<table class="w-full pp_table pp_table-striped pp_table-home2">
<thead>
<tr class="h-[38px]">
<th class="l whitespace-nowrap">
Top Agents
</th>
<th class="w-[86px] min-w-[86px]">Contracts</th>
<th class="w-[90px] min-w-[90px]">Total Value</th>
</tr>
</thead>
<tbody class="divide-y divide-slate-200 dark:divide-slate-700">
<tr class="group cursor-pointer" onclick="window.location.href = '/agent/pat-brisson'">
<td><a class="pp_link normal-case group-hover:text-blue-500 dark:group-hover:text-blue-300 text-sm" href="/agent/pat-brisson">Pat Brisson</a></td>
<td class="text-center">73</td>
<td class="r"><span class="pr-2"><span class='pp_val force-sm'><span class='val-lg'>$1,666,227,112</span><span class='val'>$1,666.23<span class='pp_currency_abbrev'>M</span></span></span></span></td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/agent/craig-oster'">
<td><a class="pp_link normal-case group-hover:text-blue-500 dark:group-hover:text-blue-300 text-sm" href="/agent/craig-oster">Craig Oster</a></td>
<td class="text-center">67</td>
<td class="r"><span class="pr-2"><span class='pp_val force-sm'><span class='val-lg'>$1,395,170,025</span><span class='val'>$1,395.17<span class='pp_currency_abbrev'>M</span></span></span></span></td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/agent/brian-bartlett'">
<td><a class="pp_link normal-case group-hover:text-blue-500 dark:group-hover:text-blue-300 text-sm" href="/agent/brian-bartlett">Brian & Scott Bartlett</a></td>
<td class="text-center">49</td>
<td class="r"><span class="pr-2"><span class='pp_val force-sm'><span class='val-lg'>$774,060,511</span><span class='val'>$774.06<span class='pp_currency_abbrev'>M</span></span></span></span></td>
</tr>
<tr class="group cursor-pointer" onclick="window.location.href = '/agent/jp-barry'">
<td><a class="pp_link normal-case group-hover:text-blue-500 dark:group-hover:text-blue-300 text-sm" href="/agent/jp-barry">J.P. Barry</a></td>
<td class="text-center">60</td>
<td class="r"><span class="pr-2"><span class='pp_val force-sm'><span class='val-lg'>$734,016,542</span><span class='val'>$734.02<span class='pp_currency_abbrev'>M</span></span></span></span></td>
</tr>
</tbody>
</table>
</div>
<a href="/agents/" class="pp_btn-sm mt-2" data-linked="s3">View All Agents</a>
</div>
<div class="mt-4">
<div>
<div class="pp_ad-box pp_ad-dsk">
<div class="pp_adtitle_container w-full px-4">
<div class="leading-none">Advertisement</div>
<div class="leading-none underline cursor-pointer" data-toggle="popover" data-tippy-trigger="click" data-title="No More Ads"
data-content="Upgrade to PuckPedia+ for an ad-free experience. <br /> <a href='/puckpedia-plus?ref=ad_cta' target='_blank' class='pp_btn-sm my-2 mt-2'>Learn More</a>">
Remove Ads
</div>
</div>
<div class="ad_inner" id="dsk-box-ad-d" tpd-dont-inject="true"></div> </div>
</div>
</div>
</div> </div>
<div class="pp_layout_wrapper">
<div class="pp_layout_main">
<div class="my-8 lg:my-6">
<div>
<div class="relative mx-[30px] lg:mx-[42px]"><!--outer wrapper used to position prev/next buttons outside the swiper container-->
<!-- Slider main container -->
<div class="swiper tweets-swiper">
<!-- Additional required wrapper -->
<div class="swiper-wrapper">
<!-- Slides -->
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2090828897398984872" target="_blank" class="main_link">Aug 21</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em"><a href="http://twitter.com/#!/search?q=%23FlyTogether" target="_blank" title="#FlyTogether" rel="nofollow">#FlyTogether</a> signed '22 <a href="http://twitter.com/#!/search?q=%23124" target="_blank" title="#124" rel="nofollow">#124</a> Cruz Lucius to a two year ELC
$1.05M Cap Hit
$1.175M AAV
Yr 1: $922.5K NHL, $102.5K Signing Bonus, $125K 'A' Performance Bonus, $82.5K Minors
Yr 2: $967.5K/$107.5K/$125K/$82.5K
Rep'd by Ben Hankinson <a href="http://twitter.com/BenHankinson" rel="nofollow" target="_blank" title="@BenHankinson" class="tweet-author">@BenHankinson</a>
<a href="https://t.co/7DjVSZVxNt" rel="nofollow" target="_blank" title="https://t.co/7DjVSZVxNt">t.co/7DjVSZVxNt</a></div>
</div>
</div>
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2090514543617122386" target="_blank" class="main_link">Aug 20</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em"> Trade
To <a href="http://twitter.com/#!/search?q=%23LGRW" target="_blank" title="#LGRW" rel="nofollow">#LGRW</a>
Sutter Muzzatti 23 y/o F - NCAA
To <a href="http://twitter.com/#!/search?q=%23Smashville" target="_blank" title="#Smashville" rel="nofollow">#Smashville</a>
Nothing
Muzzatti has the same as eligibility as Lucius and Sardryan being eligibilie to become a draft-related UFA
<a href="https://t.co/VZ0RpSccAY" rel="nofollow" target="_blank" title="https://t.co/VZ0RpSccAY">t.co/VZ0RpSccAY</a></div>
</div>
</div>
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2090156577613402210" target="_blank" class="main_link">Aug 19</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em"> Trade
To <a href="http://twitter.com/#!/search?q=%23FlyTogether" target="_blank" title="#FlyTogether" rel="nofollow">#FlyTogether</a> Cruz Lucius 22 y/o F - NCAA
To <a href="http://twitter.com/#!/search?q=%23LetsGoPens" target="_blank" title="#LetsGoPens" rel="nofollow">#LetsGoPens</a> Nothing
Similarly to the Sardaryan trade, Lucius has completed his NCAA eligibility and can become a draft-related UFA by notifying the league that he is no longer in college. His NHL rights will be held by</div>
</div>
</div>
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2089805329517187455" target="_blank" class="main_link">Aug 18</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em">The <a href="http://twitter.com/#!/search?q=%23LetsGoFlyers" target="_blank" title="#LetsGoFlyers" rel="nofollow">#LetsGoFlyers</a> signed 24 y/o D Hunter McDonald to a two year $912.5K cap hit contract
Yr 1: $900K Salary, $250K Minors, $300K Guaranteed
Yr 2: $925K Salary 1-Way
Rep'd by Pete Rutili <a href="http://twitter.com/the_team_hockey" rel="nofollow" target="_blank" title="@the_team_hockey" class="tweet-author">@the_team_hockey</a>
<a href="https://t.co/46nZwUUvJS" rel="nofollow" target="_blank" title="https://t.co/46nZwUUvJS">t.co/46nZwUUvJS</a></div>
</div>
</div>
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2089801674424500431" target="_blank" class="main_link">Aug 18</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em">The <a href="http://twitter.com/#!/search?q=%23LetsGoFlyers" target="_blank" title="#LetsGoFlyers" rel="nofollow">#LetsGoFlyers</a> signed 24 y/o D Hunter McDonald to a two year $912.5K cap hit contract
Yr 1: $900K Salary, $250K Minors, $275K Guaranteed
Yr 2: $925K Salary 1-Way
Rep'd by Pete Rutili <a href="http://twitter.com/the_team_hockey" rel="nofollow" target="_blank" title="@the_team_hockey" class="tweet-author">@the_team_hockey</a>
<a href="https://t.co/46nZwUUvJS" rel="nofollow" target="_blank" title="https://t.co/46nZwUUvJS">t.co/46nZwUUvJS</a></div>
</div>
</div>
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2089409418790142462" target="_blank" class="main_link">Aug 17</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em"> Trade
To <a href="http://twitter.com/#!/search?q=%23Canes" target="_blank" title="#Canes" rel="nofollow">#Canes</a>
Stiven Sardaryan 23 y/o F - NCAA
To <a href="http://twitter.com/#!/search?q=%23Sabres" target="_blank" title="#Sabres" rel="nofollow">#Sabres</a>
Nothing
Sardaryan has completed his NCAA eligibility and can become a draft-related UFA by notifying the league that he is no longer in college. His NHL rights will be held by Carolina until 30 days after he files</div>
</div>
</div>
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2088038762366357855" target="_blank" class="main_link">Aug 13</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em">The <a href="http://twitter.com/#!/search?q=%23GoHabsGo" target="_blank" title="#GoHabsGo" rel="nofollow">#GoHabsGo</a> signed recently acquired 23 y/o F Sasha Pastujov to a one year two-way contract
NHL: $850K
Minors: $105K
Guaranteed: $135K
Rep'd by Wade Arnott <a href="http://twitter.com/wadearnott" rel="nofollow" target="_blank" title="@wadearnott" class="tweet-author">@wadearnott</a>
<a href="https://t.co/3balPf56Ek" rel="nofollow" target="_blank" title="https://t.co/3balPf56Ek">t.co/3balPf56Ek</a></div>
</div>
</div>
<div class="swiper-slide">
<div class="pp_box mb-6 card_link cursor-pointer hover:bg-slate-50 dark:hover:bg-slate-800 hover:text-inherit">
<div class="flex items-center relative font-sans">
<img src="https://static.puckpedia.com/puckpedia.svg" class="w-[32px] h-[32px] rounded-full border border-pp-border" alt="PuckPedia logo." />
<div class="text-xs font-semibold tracking-widest uppercase absolute top-0 right-0"><a href="https://twitter.com/PuckPedia/status/2087256160386597234" target="_blank" class="main_link">Aug 11</a></div>
<i class="fab fa-x-twitter ml-2"></i>
<div class="font-bold text-base2 text-pp-copy_dk leading-none ml-1"><a href="https://twitter.com/PuckPedia" target="_blank">@PuckPedia</a></div>
</div>
<div class="mt-1.5 pp_content line-clamp-3 font-serif" style="min-height:2.6em">The <a href="http://twitter.com/#!/search?q=%23Canucks" target="_blank" title="#Canucks" rel="nofollow">#Canucks</a> signed '26 <a href="http://twitter.com/#!/search?q=%2324" target="_blank" title="#24" rel="nofollow">#24</a> Adam Novotny to a three year ELC
$1.075M Cap Hit/AAV
Yr 1: $922.5K NHL, $102.5K Signing Bonus, $87.5K Minors
Yr 2: $967.5K/$107.5K/$87.5K
Yr 3: $1.0125M/$112.5K/$87.5K
Rep'd by Gerry Johansson <a href="http://twitter.com/GJTSC" rel="nofollow" target="_blank" title="@GJTSC" class="tweet-author">@GJTSC</a>
<a href="https://t.co/pvUWPpxG0y" rel="nofollow" target="_blank" title="https://t.co/pvUWPpxG0y">t.co/pvUWPpxG0y</a></div>
</div>
</div>
</div>
<!-- If we need pagination -->
</div>
<div class="swiper-pagination tweets-swiper-pagination"></div>
<div class="swiper-button-prev tweets-swiper-button-prev !-left-[36px] !top-[50px]"></div>
<div class="swiper-button-next tweets-swiper-button-next !-right-[36px] !top-[50px]"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<div>
<div class="pp_ad-fullwidth pp_ad-dsk">
<div class="pp_adtitle">Advertisement</div>
<div class="ad_inner" id="dsk-banner-ad-c"></div> </div>
<div class="pp_ad-fullwidth pp_ad-mob">
<div class="pp_adtitle_container w-full px-4">
<div class="leading-none">Advertisement</div>
<div class="leading-none underline cursor-pointer" data-toggle="popover" data-tippy-trigger="click" data-title="No More Ads"
data-content="Upgrade to PuckPedia+ for an ad-free experience. <br /> <a href='/puckpedia-plus?ref=ad_cta' target='_blank' class='pp_btn-sm my-2 mt-2'>Learn More</a>">
Remove Ads
</div>
</div>
<div class="ad_inner" id="mob-box-ad-a"></div> </div>
</div>
<section class="pp_outerwrap">
<div class="pp_innerwrap">
<div class="pp_layout_wrapper"> <div class="pp_layout_main overflow-hidden mb-4">
<h3 class="mb-4 text-pp-copy">2026 NHL Draft Prospects</h3>
<div>
<p class="text-sm2">
<span class="font-bold">10 Players</span> shown.
Scouting reports provided by <a class="pp_link" href="https://theprohockeygroup.com" target="_blank">The Pro Hockey Group</a>.
See all players on the list <a class="pp_link" href="/scouting-reports/lists/2">here</a>.
</p>
<div class="border border-pp-border rounded-md pp_table-wrapper">
<table class="pp_table3 pp_table3-table-auto w-full">
<thead>
<tr>
<th class="text-left min-w-[150px]">Player</th>
<th class="text-left">Position</th>
<th class="text-left">Age</th>
<th class="text-left">Current Team</th>
<th class="text-left">Projection</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="pp_link" href="/scouting-reports/niklas-aaram-olsen">Aaram-Olsen, Niklas</a></td>
<td>RW</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Orebro HK Jr." onerror="this.remove()"/><span>Orebro HK Jr.</span>
</div>
</td>
<td>
<span class="font-bold">Premium Content</span> -
<a class="pp_link" href="/puckpedia-plus?ref=scouting_teaser">Login or Subscribe</a>
</td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/raphael-achermann">Achermann, Raphael</a></td>
<td>LW</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Rimouski Oceanic" onerror="this.remove()"/><span>Rimouski Oceanic</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/mike-aeschlimann">Aeschlimann, Mike</a></td>
<td>C</td>
<td>19</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Langnau SCL Tigers" onerror="this.remove()"/><span>Langnau SCL Tigers</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/samu-alalauri">Alalauri, Samu</a></td>
<td>D</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Pelicans Lahti U20" onerror="this.remove()"/><span>Pelicans Lahti U20</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/brittan-alstead">Alstead, Brittan</a></td>
<td>C</td>
<td>20</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Penticton Vees" onerror="this.remove()"/><span>Penticton Vees</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/adam-andersson">Andersson, Adam</a></td>
<td>C</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Leksands IF Jr." onerror="this.remove()"/><span>Leksands IF Jr.</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/ludvig-andersson">Andersson, Ludvig</a></td>
<td>C</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Orebro HK Jr." onerror="this.remove()"/><span>Orebro HK Jr.</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/lukas-andersson">Andersson, Lukas</a></td>
<td>C</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Farjestad BK J18E" onerror="this.remove()"/><span>Farjestad BK J18E</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/carson-andrew">Andrew, Carson</a></td>
<td>RW</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Soo Greyhounds" onerror="this.remove()"/><span>Soo Greyhounds</span>
</div>
</td>
<td></td>
</tr>
<tr>
<td><a class="pp_link" href="/scouting-reports/luka-arkko">Arkko, Luka</a></td>
<td>LW</td>
<td>18</td>
<td>
<div class="flex items-center gap-2">
<img class="w-5 h-5" src="" alt="Pelicans Lahti U20" onerror="this.remove()"/><span>Pelicans Lahti U20</span>
</div>
</td>
<td></td>
</tr>
</table>
</div>
</div>
</div> </div> </div>
</section>
<section class="pp_outerwrap" data-observe="capology">
<div class="pp_innerwrap">
<div class="pp_layout_wrapper my-6"> <div class="pp_layout_main">
<h3 id="capologist" class="scroll-mt-[80px]">The Capologist</h3>
<div class="mt-4 flex flex-col-reverse sm:flex-row sm:items-center sm:mt-0">
<div class="max-w-[360px] sm:max-w-[400px] my-4">Have questions about the NHL Salary Cap? The Puckpedia
Capologist answers your questions.</div>
<div>
<a href="/ask-the-capologist" target="_blank" class="pp_btn whitespace-nowrap lg:ml-1.5">Submit a Question<i
class="fad fa-comments pl-1"></i></a>
</div>
</div>
<div class="flex mb-7">
<div class="max-w-[320px] sm:max-w-[360px]"><div>
<form style="margin-block-end:0;" data-drupal-selector="capologist-search-form" action="/" method="post" id="capologist-search-form" accept-charset="UTF-8">
<div class="relative"><i class="pp_searchbox_icon fad fa-magnifying-glass"></i><div class="js-form-item form-item js-form-type-textfield form-item-search js-form-item-search form-no-label">
<input class="autocomp form-input pp_searchbox form-autocomplete form-text" data-drupal-selector="edit-search" data-autocomplete-path="/puckpedia/capologist_search/autocomplete/search" type="text" id="edit-search" name="search" value="" size="60" maxlength="100" placeholder="search salary cap info..." />
</div>
</div><input class="hidden button js-form-submit form-submit" data-drupal-selector="edit-submit" type="submit" id="edit-submit" name="op" value="Submit" />
<input autocomplete="off" data-drupal-selector="form-steaoiqi2vh7iymd5yxtabsyr0mahuk1skfhjcxeryu" type="hidden" name="form_build_id" value="form-STEaoiQi2Vh7IYMd5YXTABSYR0maHUk1skFhJCxErYU" />
<input data-drupal-selector="edit-capologist-search-form" type="hidden" name="form_id" value="capologist_search_form" />
</form>
</div>
</div>
</div>
<h3 class="mt-4">Topics</h3>
<div class="flex flex-wrap items-center mt-2 mb-6 gap-1.5">
<a href="/salary-cap" class="pp_btn">The Basics</a>
<a href="/salary-cap" class="pp_btn">Contracts & Rules</a>
<a href="/salary-cap" class="pp_btn">Team Actions</a>
<a href="/salary-cap" class="pp_btn">Free Agency</a>
</div>
<div class="grid grid-cols-1 md:grid-cols-2">
<div class="pr-2 lg:pr-12">
<h3 class="mb-2">Latest Questions</h3>
<div class="views-element-container"><div class="list-group js-view-dom-id-735dc6d65f708b6ab611627135a4c0d30d29da837b7df4f7031a3e58446efff0">
<div>
<a href="/salary-cap/answers/multiple-offer-sheets">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Multiple Offer Sheets</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Jul 8 2026</span> <span class="uppercase tracking-widest text-xs pl-1">Brian S</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/trading-after-successful-offer-sheet">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/12-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Trading after successful offer sheet</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Jul 8 2026</span> <span class="uppercase tracking-widest text-xs pl-1">C M</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/re-acquiring-retained-players-0">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/10-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Re-acquiring Retained Players</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Jun 16 2026</span> <span class="uppercase tracking-widest text-xs pl-1"></span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/martone-games-played-bonuses">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/12-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Martone Games Played Bonuses</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Apr 10 2026</span> <span class="uppercase tracking-widest text-xs pl-1">Carter H</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/emergency-vs-regular-recall">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Emergency vs Regular Recall</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Dec 29 2025</span> <span class="uppercase tracking-widest text-xs pl-1"></span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/minimum-salary-new-cba">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Minimum Salary in new CBA</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Aug 4 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Ian W</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/emergency-exception-new-cba">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Emergency Exception in new CBA</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Aug 4 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Carmen</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/perreault-slide-eligibility">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/6-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Perreault Slide Eligibility</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Apr 30 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Isaac</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/entry-level-maximum">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Entry Level Maximum</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Apr 30 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Don</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/high-current-cap-space">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">High Current Cap Space</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Apr 13 2025</span> <span class="uppercase tracking-widest text-xs pl-1"></span>
</div>
</div>
</a>
</div>
<nav class="pager my-3" role="navigation" aria-labelledby="pagination-heading">
<ul class="pager__items js-pager__items flex font-sans items-center text-base text-white">
<li class="pager__item font-bold underline text-lg p-2 md:p-3">
<a href="?page=0" title="Current page" aria-current="page">
<span class="visually-hidden">
Current page
</span>1</a>
</li>
<li class="pager__item p-2 md:p-3">
<a href="?page=1" title="Go to page 2">
<span class="visually-hidden">
Page
</span>2</a>
</li>
<li class="pager__item p-2 md:p-3">
<a href="?page=2" title="Go to page 3">
<span class="visually-hidden">
Page
</span>3</a>
</li>
<li class="pager__item p-2 md:p-3">
<a href="?page=3" title="Go to page 4">
<span class="visually-hidden">
Page
</span>4</a>
</li>
<li class="pager__item pager__item--ellipsis" role="presentation">…</li>
<li class="pager__item pager__item--next">
<a href="?page=1" title="Go to next page" rel="next">
<span aria-hidden="true">Next <i class="fad fa-arrow-right"></i></span>
</a>
</li>
<li class="pager__item pager__item--last">
<a href="?page=18" title="Go to last page">
<span aria-hidden="true" class="ml-3">Last <i class="fad fa-angles-right"></i></span>
</a>
</li>
</ul>
</nav>
</div>
</div>
<a href="/ask-the-capologist" target="_blank" class="pp_btn whitespace-nowrap ml-1.5">Submit a Question<i
class="fad fa-comments pl-1"></i></a>
</div>
<div class="mt-6 md:mt-0 ">
<h3 class="mb-2">Popular Questions</h3>
<div class="views-element-container"><div class="list-group js-view-dom-id-e766773dce184b8f9b67b2bb3cbc5be47b79a8eb3f8612be79f03dd88a052d1e">
<div>
<a href="/salary-cap/answers/multiple-offer-sheets">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Multiple Offer Sheets</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Jul 8 2026</span> <span class="uppercase tracking-widest text-xs pl-1">Brian S</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/trading-after-successful-offer-sheet">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/12-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Trading after successful offer sheet</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Jul 8 2026</span> <span class="uppercase tracking-widest text-xs pl-1">C M</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/re-acquiring-retained-players-0">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/10-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Re-acquiring Retained Players</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Jun 16 2026</span> <span class="uppercase tracking-widest text-xs pl-1"></span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/emergency-vs-regular-recall">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Emergency vs Regular Recall</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Dec 29 2025</span> <span class="uppercase tracking-widest text-xs pl-1"></span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/minimum-salary-new-cba">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Minimum Salary in new CBA</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Aug 4 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Ian W</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/high-current-cap-space">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/0-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">High Current Cap Space</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Apr 13 2025</span> <span class="uppercase tracking-widest text-xs pl-1"></span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/marner-8-year">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/8-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Marner 8 year</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Mar 19 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Robert S</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/elc-bonuses">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/12-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">ELC Bonuses</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Mar 16 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Tim T.</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/kane-bonuses-ltir-space">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/24-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Kane & Bonuses with LTIR space</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Mar 16 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Rick</span>
</div>
</div>
</a>
</div>
<div>
<a href="/salary-cap/answers/mikko-rantanen-back-colorado">
<div class="border border-slate-200 dark:border-slate-700 rounded-md p-3 flex mb-1 hover:bg-slate-50 dark:hover:bg-slate-800">
<img src="https://cdn.puckpedia.com/s/assets/logos/1-min.svg" class="logo-sm" alt="" />
<div class="ml-2 font-sans font-semibold">
<div class="font-bold">Mikko Rantanen back to Colorado?</div>
<span class="uppercase tracking-widest text-xs border-r border-slate-900 dark:border-slate-700 pr-1">Feb 27 2025</span> <span class="uppercase tracking-widest text-xs pl-1">Michael C</span>
</div>
</div>
</a>
</div>
<nav class="pager my-3" role="navigation" aria-labelledby="pagination-heading--2">
<ul class="pager__items js-pager__items flex font-sans items-center text-base text-white">
<li class="pager__item font-bold underline text-lg p-2 md:p-3">
<a href="?page=0" title="Current page" aria-current="page">
<span class="visually-hidden">
Current page
</span>1</a>
</li>
<li class="pager__item p-2 md:p-3">
<a href="?page=1" title="Go to page 2">
<span class="visually-hidden">
Page
</span>2</a>
</li>
<li class="pager__item p-2 md:p-3">
<a href="?page=2" title="Go to page 3">
<span class="visually-hidden">
Page
</span>3</a>
</li>
<li class="pager__item p-2 md:p-3">
<a href="?page=3" title="Go to page 4">
<span class="visually-hidden">
Page
</span>4</a>
</li>
<li class="pager__item pager__item--ellipsis" role="presentation">…</li>
<li class="pager__item pager__item--next">
<a href="?page=1" title="Go to next page" rel="next">
<span aria-hidden="true">Next <i class="fad fa-arrow-right"></i></span>
</a>
</li>
<li class="pager__item pager__item--last">
<a href="?page=5" title="Go to last page">
<span aria-hidden="true" class="ml-3">Last <i class="fad fa-angles-right"></i></span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
</div>
<p>PuckPedia streamlines your search for information and news on all things hockey. From scores and NHL
trades to draft history, salary cap, injuries and NHL player salaries, PuckPedia keeps you up to speed
with by-the-minute information and news. We are the only source that's needed for hockey fans and
professionals alike.</p>
</div>
<div class="pp_layout_sidebar"> <h3 class="mt-2">Quicklinks</h3>
<ul class="pt-2 lg:pt-6 mb-6 flex flex-wrap lg:block gap-2">
<li class="relative lg:mb-2">
<a class="pp_btn-quicklink" href="/waivers-tracker">
Waivers Tracker
</a>
</li>
<li class="relative lg:mb-2">
<a class="pp_btn-quicklink" href="/deferred">
Deferred Salary Calculator
</a>
</li>
<li class="relative lg:mb-2">
<a class="pp_btn-quicklink" href="/tax-calculator">
Tax Calculator
</a>
</li>
<li class="relative lg:mb-2">
<a class="pp_btn-quicklink" href="/puckpedia-plus?ref=home_quicklink">
PuckPedia+
</a>
</li>
</ul>
<div class="mt-4"><div>
<div id="as1" class="pp_ad-sky pp_ad-dsk ">
<div class="pp_adtitle">Advertisement</div>
<div class="ad_inner" id="dsk-box-ad-e"></div> </div>
</div>
</div>
</div> </div>
</div></section>
</div>
</main>
<footer role="contentinfo">
<div>
<div
class="bg-pp-brand_blue py-8">
<div class="pp_innerwrap pp_footer px-3">
<div class="hidden mb-6 flex flex-col md:flex-row md:justify-between">
<div class="flex items-center mb-4 md:mb-0">
<img src="https://cdn.puckpedia.com/s/assets/puckpedia.svg" alt="PuckPedia logo." class="flex-none pr-6 w-[120px] lg:w-[100px]"/>
<div class="font-sans text-lg font-bold text-white max-w-[350px]">The Ultimate Source for Hockey Fans and Professionals</div>
</div>
<div class="flex items-center gap-2">
<span class="text-sm text-white">Theme:</span>
<div data-js="toggle_swap" data-toggle_wrapper="toggle_wrapper" data-toggle_target="pp_val" data-toggle_class="force-lg" data-toggle_class_default="force-sm" data-toggle-darkmode="true" class="toggle_switch gap-1.5">
<i class="text-slate-200 fad fa-sun"></i>
<button type="button" role="switch" aria-checked="false" aria-labelledby="values-label">
<span aria-hidden="true"></span>
</button>
<i class="text-slate-200 fad fa-moon"></i>
</div>
</div>
</div>
<div class="mb-6 grid grid-cols-2 md:grid-cols-4 gap-x-4 gap-y-8">
<div>
<h3 class="text-white mb-2 ml-2">
<a href="/news">News</a>
</h3>
<ul class="pp_footer_nav">
<li>
<a class="" href="/trades">Trades</a>
</li>
<li>
<a class="" href="/signings">Signings</a>
</li>
<li>
<a class="" href="/waiver-wire">Waiver Wire</a>
</li>
<li>
<a class="" href="/transactions">Transactions</a>
</li>
<li>
<a class="" href="/injuries">Injuries</a>
</li>
</ul>
</div>
<div>
<h3 class="text-white mb-2 ml-2">
<a href="/buyout-calculator">Trackers</a>
</h3>
<ul class="pp_footer_nav">
<li>
<a class="" href="/buyout-calculator">Buyouts</a>
</li>
<li>
<a class="" href="/entry-level-slides">Entry Level Slides</a>
</li>
<li>
<a class="" href="/group6">Group 6 UFAs</a>
</li>
<li>
<a class="" href="/waivers-tracker">Waivers</a>
</li>
<li>
<a class="" href="/offer-sheet-tracker">Offer Sheets</a>
</li>
</ul>
</div>
<div>
<h3 class="text-white mb-2 ml-2">
<a href="/teams">Links</a>
</h3>
<ul class="pp_footer_nav">
<li>
<a class="" href="/teams">Teams</a>
</li>
<li>
<a class="" href="/lineups">Lineups</a>
</li>
<li>
<a class="" href="/scouting-reports">Scouting Reports</a>
</li>
<li>
<a class="" href="/draft">Drafts</a>
</li>
<li>
<a class="" href="https://puckdoku.com" target="_blank">Puckdoku</a>
</li>
</ul>
</div>
<div>
<h3 class="text-white mb-2 ml-2">
<a href="/tools">Tools</a>
</h3>
<ul class="pp_footer_nav">
<li>
<a class="" href="https://puckgm.puckpedia.com" target="_blank">PuckGM</a>
</li>
<li>
<a class="" href="/players">Player Dashboard</a>
</li>
<li>
<a class="" href="/tools/data">Data API</a>
</li>
<li>
<a class="" href="/tools/connector">Connector & Plugins</a>
</li>
<li>
<a class="" href="/tools/links">Link Maker Tool</a>
</li>
</ul>
</div>
</div>
<div class="mb-8 grid grid-cols-1 md:grid-cols-2 gap-6">
<div class="flex items-center gap-2 md:gap-3 font-sans text-sm md:text-base">
<div class="mr-1 flex items-center gap-2">
<span class="text-sm text-white">Theme:</span>
<div data-js="toggle_swap" data-toggle_wrapper="toggle_wrapper" data-toggle_target="pp_val" data-toggle_class="force-lg" data-toggle_class_default="force-sm" data-toggle-darkmode="true" class="toggle_switch gap-1.5">
<i class="text-slate-200 fad fa-sun"></i>
<button type="button" role="switch" aria-checked="false" aria-labelledby="values-label">
<span aria-hidden="true"></span>
</button>
<i class="text-slate-200 fad fa-moon"></i>
</div>
</div>
<span class="hidden md:block text-white">©
2026
PuckPedia</span>
<a href="/about" class="text-sky-400 hover:underline border-white">About</a>
<a href="/contact" class="text-sky-400 hover:text-sky-300 border-white">Contact</a>
<a href="/terms-of-use" class="text-sky-400 hover:text-sky-300 border-white">Terms of Use</a>
<a href="/privacy-policy" class="text-sky-400 hover:text-sky-300">Privacy Policy</a>
</div>
<div class="flex flex-wrap items-center md:justify-end gap-4 text-white">
<span class="block md:hidden text-white">©
2026
PuckPedia</span>
<div class="flex items-center gap-3">
<a href="https://x.com/puckpedia" target="_blank" class="text-white hover:text-sky-300">
<i class="text-lg fab fa-x-twitter"></i>
</a>
<a href="https://www.youtube.com/@PuckPediaTV" target="_blank" class="text-white hover:opacity-70">
<img src="https://cdn.puckpedia.com/s/assets/youtube.png" alt="YouTube" class="w-7 h-5">
</a>
<a href="https://open.spotify.com/show/6drftkvjlu0HsFcTmulnOf" target="_blank" class="text-white hover:opacity-70">
<img src="https://cdn.puckpedia.com/s/assets/spotify.png" alt="Spotify" class="w-5 h-5">
</a>
<a href="https://podcasts.apple.com/us/podcast/the-puckpedia-hockey-show/id1822173927" target="_blank" class="text-white hover:opacity-70">
<img src="https://cdn.puckpedia.com/s/assets/apple-podcast.png" alt="Apple Podcasts" class="w-5 h-5">
</a>
</div>
</div>
</div>
<div class="flex justify-center items-center text-white">
<i class="text-white text-md md:text-lg fa-kit fa-puckpedia mr-1.5"></i>
The Ultimate Source for Hockey Fans and Professionals
</div>
<div class="pplus mb-16 md:mb-32"></div>
</div>
</div>
<div>
<div class="pp_ad-stickyfooter pp_ad-dsk">
<div class="ad_inner" id="dsk-banner-ad-a"></div>
</div>
<div class="pp_ad-stickyfooter pp_ad-mob">
<div class="ad_inner" id="mob-banner-ad-a"></div>
</div>
</div>
<div>
<div class="ella-chatbot--has-ad" x-data="ella_chatbot_button(true)" x-show="visible" x-cloak>
<button id="ella-chatbot-sticky-button" :class="{ 'ella-chatbot-sticky-button-expanded': expanded }" @click="toggleOpen">
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" class="message">
<path d="M15 1.5H3c-.827 0-1.5.67-1.5 1.494v9.012C1.5 12.83 2.173 13.5 3 13.5h2.25v3l4.763-3H15c.827 0 1.5-.67 1.5-1.494V2.994A1.499 1.499 0 0 0 15 1.5z"></path>
</svg>
<span class="ella-chatbot-sticky-button-label">PuckPedia AI Assistant</span>
</button>
<div class="ella-chatbot-promo"
x-show="showPromo" x-cloak x-transition
@click.outside="if (!$event.target.closest('#ella-chatbot-sticky-button')) showPromo = false"
role="dialog" aria-label="PuckPedia AI Assistant">
<div class="ella-chatbot-promo__header">
<span class="ella-chatbot-promo__avatar">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 18">
<path d="M15 1.5H3c-.827 0-1.5.67-1.5 1.494v9.012C1.5 12.83 2.173 13.5 3 13.5h2.25v3l4.763-3H15c.827 0 1.5-.67 1.5-1.494V2.994A1.499 1.499 0 0 0 15 1.5z"></path>
</svg>
</span>
<div class="ella-chatbot-promo__heading">
<div class="ella-chatbot-promo__title">PuckPedia AI Assistant</div>
<div class="ella-chatbot-promo__beta">Beta</div>
</div>
<button type="button" class="ella-chatbot-promo__close" @click="showPromo = false" aria-label="Close">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round">
<path d="M6 6l12 12M18 6 6 18"></path>
</svg>
</button>
</div>
<div class="ella-chatbot-promo__body">
<p class="ella-chatbot-promo__text">
Meet the PuckPedia AI Assistant. Ask any NHL CBA or salary cap question and get instant answers. Sign up for a free account to give it a try.
</p>
<a :href="ssoUrl" class="ella-chatbot-promo__cta" @click="signupClick()">Create a free PuckPedia account</a>
<button type="button" class="ella-chatbot-promo__dismiss" @click="hideIcon()">Hide this icon</button>
</div>
</div>
</div>
<style type="text/css">
#ella-chatbot-sticky-button {
height: 44px;
width: 44px;
background-color: #0d74d9;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
gap: 0;
cursor: pointer;
position: fixed;
z-index: 99998;
right: 20px;
bottom: calc(6px + var(--ella-ad-offset, 0px));
outline: none;
border: none;
font-size: 14px;
font-weight: 600;
color: #fff;
white-space: nowrap;
overflow: hidden;
padding: 0;
box-shadow: 0 4px 20px rgba(13, 116, 217, 0.4);
transition: width 0.4s ease, border-radius 0.4s ease, gap 0.4s ease, padding 0.4s ease;
}
#ella-chatbot-sticky-button:hover {
box-shadow: 0 6px 28px rgba(13, 116, 217, 0.55);
}
#ella-chatbot-sticky-button svg {
flex-shrink: 0;
fill: #fff;
}
.ella-chatbot-sticky-button-label {
overflow: hidden;
opacity: 0;
max-width: 0;
/* The little tail on the message icon makes it look unaligned. */
margin-top: -2px;
transition: max-width 0.4s ease, opacity 0.3s ease;
}
/* Expanded state */
#ella-chatbot-sticky-button.ella-chatbot-sticky-button-expanded {
width: 220px;
border-radius: 25px;
gap: 10px;
padding: 0 20px 0 16px;
}
#ella-chatbot-sticky-button.ella-chatbot-sticky-button-expanded .ella-chatbot-sticky-button-label {
max-width: 160px;
opacity: 1;
}
/* When the user sees ads, lift the button + popover above the
sticky-footer adhesion ad. Offsets are fixed per breakpoint and match
the ad heights (.pp_ad-mob below md, .pp_ad-dsk at md+). */
.ella-chatbot--has-ad {
--ella-ad-offset: 90px; /* mobile adhesion */
}
@media (min-width: 768px) {
.ella-chatbot--has-ad {
--ella-ad-offset: 90px; /* desktop adhesion */
}
}
/* Promo popover (anonymous users), anchored above the sticky button. */
.ella-chatbot-promo {
position: fixed;
right: 20px;
/* 20px button bottom + 44px button, plus any ad offset. */
bottom: calc(60px + var(--ella-ad-offset, 0px));
z-index: 99999; /* above the button's 99998 */
width: 320px;
max-width: calc(100vw - 40px);
background-color: #fff;
border: 1px solid #e2e8f0; /* slate-200 */
border-radius: 14px;
box-shadow: 0 18px 45px rgba(15, 23, 42, 0.25);
overflow: hidden;
}
.dark .ella-chatbot-promo {
background-color: #0f172a; /* slate-900 */
border-color: #334155; /* slate-700 */
}
.ella-chatbot-promo__header {
display: flex;
align-items: center;
gap: 10px;
padding: 16px 16px 8px;
}
.ella-chatbot-promo__avatar {
display: flex;
align-items: center;
justify-content: center;
height: 32px;
width: 32px;
border-radius: 50%;
background-color: #0d74d9;
flex-shrink: 0;
}
.ella-chatbot-promo__avatar svg {
height: 16px;
width: 16px;
fill: #fff;
}
.ella-chatbot-promo__heading {
line-height: 1.2;
}
.ella-chatbot-promo__title {
font-weight: 700;
font-size: 16px;
color: #0f172a; /* slate-900 */
}
.dark .ella-chatbot-promo__title {
color: #fff;
}
.ella-chatbot-promo__beta {
font-size: 10px;
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: 600;
color: #0d74d9;
}
.dark .ella-chatbot-promo__beta {
color: #60a5fa; /* blue-400 */
}
.ella-chatbot-promo__close {
margin-left: auto;
display: flex;
align-items: center;
justify-content: center;
padding: 6px;
background: none;
border: none;
cursor: pointer;
color: #94a3b8; /* slate-400 */
transition: color 0.15s ease;
}
.ella-chatbot-promo__close:hover {
color: #334155; /* slate-700 */
}
.dark .ella-chatbot-promo__close:hover {
color: #e2e8f0; /* slate-200 */
}
.ella-chatbot-promo__close svg {
height: 16px;
width: 16px;
}
.ella-chatbot-promo__body {
padding: 0 16px 16px;
}
.ella-chatbot-promo__text {
margin: 0 0 16px;
font-size: 14px;
line-height: 1.45;
color: #475569; /* slate-600 */
}
.dark .ella-chatbot-promo__text {
color: #cbd5e1; /* slate-300 */
}
.ella-chatbot-promo__cta {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
padding: 11px 16px;
border-radius: 9px;
background-color: #0d74d9;
color: #fff;
font-weight: 600;
font-size: 14px;
text-decoration: none;
transition: background-color 0.15s ease;
}
.ella-chatbot-promo__cta:hover {
background-color: #0b63b8;
color: #fff;
}
.ella-chatbot-promo__dismiss {
display: block;
width: 100%;
margin-top: 12px;
text-align: center;
background: none;
border: none;
cursor: pointer;
font-size: 12px;
font-weight: 600;
color: #64748b; /* slate-500 */
transition: color 0.15s ease;
}
.ella-chatbot-promo__dismiss:hover {
color: #475569; /* slate-600 */
}
.dark .ella-chatbot-promo__dismiss {
color: #cbd5e1; /* slate-300 */
}
.dark .ella-chatbot-promo__dismiss:hover {
color: #e2e8f0; /* slate-200 */
}
</style>
<script>
document.addEventListener("alpine:init", () => {
Alpine.data("ella_chatbot_button", (promo = false) => ({
promo: promo,
initialScrollY: window.scrollY,
expanded: true,
open: false, // real chatbot open state (non-promo)
showPromo: false, // promo popover state (promo only)
visible: true, // whole-component visibility (hide-icon dismissal)
ssoUrl: "/sso-login",
init() {
window.addEventListener('scroll', () => {
if (window.scrollY > this.initialScrollY + 500) {
this.expanded = false;
}
}, { passive: true });
if (this.promo) {
// Honor a persistent dismissal from a previous visit.
if (window.localStorage.getItem('ella_chatbot_promo_hidden') === '1') {
this.visible = false;
}
// Build the sso-login URL client-side so the server build stays cacheable.
const path = window.location.pathname + window.location.search;
this.ssoUrl = '/sso-login?return=' + encodeURIComponent(path);
}
else {
document.addEventListener('chatbot.toggle.close', () => {
this.open = false;
});
}
},
toggleOpen() {
if (this.promo) {
this.showPromo = !this.showPromo;
if (this.showPromo) {
this.track('ella_promo_open');
}
return;
}
if (!this.open) {
document.dispatchEvent(new Event('chatbot.toggle.open'));
this.open = true;
this.track('ella_chatbot_open');
}
else {
document.dispatchEvent(new Event('chatbot.toggle.close'));
this.open = false;
this.track('ella_chatbot_close');
}
},
hideIcon() {
window.localStorage.setItem('ella_chatbot_promo_hidden', '1');
this.showPromo = false;
this.visible = false;
this.track('ella_promo_hide');
},
signupClick() {
// Plug into the same funnel-entry attribution the pricing pages use
// (sessionStorage['pp_funnel_entry']), so a later paid conversion is
// reported to GA4 with funnel_entry='ella_promo' on the purchase event.
// First-touch: never overwrite an existing entry point.
const source = 'ella_promo';
try {
if (!window.sessionStorage.getItem('pp_funnel_entry')) {
window.sessionStorage.setItem('pp_funnel_entry', source);
}
} catch (e) { /* private mode / storage disabled */ }
this.track('ella_promo_signup_click', {
funnel_entry: source,
page_path: window.location.pathname,
});
},
track(event, params = {}) {
if (window.gtag) {
window.gtag('event', event, params);
}
},
}));
});
</script>
</div>
</div>
</footer>
</div>
</div>
<div>
<div data-modal="modal_search" class="pp_modal hidden" aria-labelledby="modal-title" role="dialog" aria-modal="true" x-data="puckpediaSearch">
<div data-js="modalOverlay" class="pp_modal_overlay">
<div class="pp_modal_centering_wrapper">
<div data-js="modalPanel" class="pp_modal_panel dark:border dark:border-pp-border w-full !p-0" style="max-width: 32rem">
<div class="pt-4 pb-2 border-pp-border flex items-center" :class="(search.length > 0 || trendingResults.length > 0) && 'mb-6 border-b'">
<div class="px-4" @click="$refs.searchInput.focus()">
<i class="fad fa-magnifying-glass text-lg"></i>
</div>
<input id="puckpedia-search-input" x-ref="searchInput" autofocus class="w-full border-none !ring-0 !pl-0 dark:bg-slate-800 dark:text-slate-200" type="text" name="search" :placeholder="searchPlaceholder" autocomplete="off" x-model.debounce.150ms="search" x-effect="onSearch(search)" @keydown="handleKeyDown($event)" role="combobox" aria-expanded="true" aria-haspopup="listbox" :aria-activedescendant="selectedIndex >= 0 ? `search-item-${selectedIndex}` : null" aria-autocomplete="list" />
<div class="px-4">
<button data-js="modal_close" class="md:border md:border-pp-border rounded-md md:p-1 text-xs font-semibold tracking-wider">
<span class="hidden md:inline">ESC</span>
<i class="md:hidden fad fa-circle-xmark fa-2x"></i>
</button>
</div>
</div>
<div class="px-8 overflow-y-auto transition-all duration-300" :class="(search.length > 0 || trendingResults.length > 0) ? 'max-h-[min(60vh,400px)] pb-8' : 'max-h-0'" role="listbox" id="search-results">
<div x-show="teamResults.length > 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">Teams</div>
<ul>
<template x-for="result in allResults.filter(r => r.section === 'team')" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackResultClick(result)">
<img class="w-6 h-6 rounded-full mr-2" :src="result.logo ?? ''" />
<span x-text="result.label"></span>
</a>
</li>
</template>
</ul>
</div>
<div class="mt-4" x-show="playerResults.length > 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">Players</div>
<ul>
<template x-for="result in allResults.filter(r => r.section === 'player')" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackResultClick(result)">
<img class="w-6 h-6 rounded-full mr-2" :src="result.logo ?? 'https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png'" onerror="this.src='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png'" />
<span x-text="result.label"></span>
</a>
</li>
</template>
</ul>
</div>
<div class="mt-4" x-show="agentResults.length > 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">Agents</div>
<ul>
<template x-for="result in allResults.filter(r => r.section === 'agent')" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackResultClick(result)">
<i class="w-6 h-6 text-lg flex items-center justify-center rounded-full mr-2 fad fa-user-secret"></i>
<span x-text="result.label"></span>
</a>
</li>
</template>
</ul>
</div>
<div class="mt-4" x-show="gmResults.length > 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">General Managers</div>
<ul>
<template x-for="result in allResults.filter(r => r.section === 'gm')" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackResultClick(result)">
<i class="w-6 h-6 text-lg flex items-center justify-center rounded-full mr-2 fad fa-user-tie"></i>
<span x-text="result.label"></span>
</a>
</li>
</template>
</ul>
</div>
<div class="mt-4" x-show="menuResults.length > 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">PuckPedia</div>
<ul>
<template x-for="result in allResults.filter(r => r.section === 'menu')" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackResultClick(result)">
<i class="w-6 h-6 text-lg flex items-center justify-center rounded-full mr-2 fa-kit fa-puckpedia"></i>
<span x-text="result.label"></span>
</a>
</li>
</template>
</ul>
</div>
<div class="mt-4" x-show="capologyResults.length > 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">Capology</div>
<ul>
<template x-for="result in allResults.filter(r => r.section === 'capology')" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackResultClick(result)">
<i class="w-6 h-6 text-lg flex items-center justify-center rounded-full mr-2 fa-kit fa-puckpedia"></i>
<span x-text="result.label"></span>
</a>
</li>
</template>
</ul>
</div>
<div class="mt-4" x-show="newsResults.length > 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">News</div>
<ul>
<template x-for="result in allResults.filter(r => r.section === 'news')" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackResultClick(result)">
<i class="w-6 h-6 text-lg flex items-center justify-center rounded-full mr-2 fad fa-newspaper"></i>
<span x-text="result.label"></span>
</a>
</li>
</template>
</ul>
</div>
<div class="" x-show="trendingResults.length > 0 && search.length === 0">
<div class="text-sm2 text-pp-copy_lt mb-1 px-2">Trending on PuckPedia</div>
<ul>
<template x-for="result in trendingResults" :key="result.value">
<li class="flex items-center relative rounded-md" :class="getItemClasses(result.globalIndex)" role="option" :id="`search-item-${result.globalIndex}`" :aria-selected="selectedIndex === result.globalIndex" @mouseenter="selectedIndex = result.globalIndex">
<template x-if="result.type === 'player'">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackTrendingClick(result)">
<img class="w-6 h-6 rounded-full mr-2" :src="result.logo ?? 'https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png'" onerror="this.src='https://cdn.puckpedia.com/s/assets/nhlapi/default-skater.png'" />
<span x-text="result.label"></span>
</a>
</template>
<template x-if="result.type === 'team'">
<a class="flex items-center w-full p-2 text-md hover:text-pp-copy_dk" :href="result.value" tabindex="-1" @click="trackTrendingClick(result)">
<img class="w-6 h-6 rounded-full mr-2" :src="result.logo ?? ''"/>
<span x-text="result.label"></span>
</a>
</template>
</li>
</template>
</ul>
</div>
<div x-show="isLoading" class="text-center py-8 px-4">
<div class="text-slate-500 mb-2">
<i class="fad fa-spinner fa-spin fa-2x"></i>
</div>
<div class="text-slate-600 font-medium">Searching...</div>
</div>
<div x-show="search.length > 0 && isResultsEmpty && !isLoading" class="text-center py-8 px-4">
<div class="text-slate-600 font-medium mb-1">No results found</div>
<div class="text-sm text-slate-500">Try searching for a different player, team, agent, GM, or capology content</div>
</div>
</div>
<div class="hidden md:flex border-t border-pp-border p-4 justify-end items-center text-pp-copy_lt">
<div x-show="search.length > 0" class="flex items-center">
<button class="mr-2 border border-pp-border rounded-md p-1 text-xs font-semibold tracking-wider">
Enter
</button>
<span class="mr-4">To Select</span>
<button class="mr-1 border border-pp-border rounded-md p-1 text-xs font-semibold tracking-wider">
<i class="fas fa-arrow-up"></i>
</button>
<button class="mr-2 border border-pp-border rounded-md p-1 text-xs font-semibold tracking-wider">
<i class="fas fa-arrow-up rotate-180"></i>
</button>
<span class="text-pp-copy_lt">To Navigate</span>
</div>
<div x-show="search.length === 0" class="">
<div class="pp-copy_lt">Go Ad-Free with <a href="https://puckpedia.com/puckpedia-plus?ref=search_cta" target="_blank" class="inline pp_link font-bold text-pp-copy_dk">PuckPedia+</a></div>
</div>
</div>
<div class="flex md:hidden border-t border-pp-border p-4 justify-end items-center text-pp-copy_lt">
<div class="pp-copy_lt font-normal">Go Ad-Free with <a href="https://puckpedia.com/puckpedia-plus?ref=search_cta" target="_blank" class="inline pp_link font-bold text-pp-copy_dk">PuckPedia+</a></div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript">
document.addEventListener("alpine:init", () => {
Alpine.data("puckpediaSearch", () => ({
search: "",
playerResults: [],
teamResults: [],
agentResults: [],
gmResults: [],
capologyResults: [],
newsResults: [],
menuResults: [],
recentSearches: [],
isLoading: false,
selectedIndex: -1,
allResults: [],
trendingResults: [],
searchPlaceholder: 'Search PuckPedia',
_searchTrackTimer: null,
_lastTrackedTerm: '',
init() {
// Cache the search placeholder based on device/platform
const isDesktop = window.matchMedia('(min-width: 768px) and (hover: hover)').matches;
if (isDesktop) {
const isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
const shortcut = isMac ? '⌘ + K' : 'Ctrl + K';
this.searchPlaceholder = `Search PuckPedia (${shortcut})`;
}
// Watch for when the modal becomes visible/hidden and handle focus/clear
const modal = this.$el;
const observer = new MutationObserver((mutations) => {
mutations.forEach((mutation) => {
if (mutation.type === 'attributes' && mutation.attributeName === 'class') {
if (!modal.classList.contains('hidden')) {
// Modal is now visible, focus the input after a short delay
setTimeout(() => {
this.$refs.searchInput.focus();
}, 0);
} else {
// Modal is now hidden, clear the search
this.search = "";
this.clearResults();
}
}
});
});
observer.observe(modal, {
attributes: true,
attributeFilter: ['class']
});
// Get trending results deferred from initial page load
// Commented out for now until we verify things are caching properly.
setTimeout(() => {
this.getTrendingResults();
}, 1250);
},
clearResults() {
this.playerResults = [];
this.teamResults = [];
this.agentResults = [];
this.gmResults = [];
this.capologyResults = [];
this.newsResults = [];
this.menuResults = [];
this.allResults = [];
this.isLoading = false;
// If we have trending results, select the first one
this.selectedIndex = this.trendingResults.length > 0 ? 0 : -1;
},
get isResultsEmpty() {
return this.allResults.length === 0;
},
getAllResults() {
// Note - this must match the order of the sections in the template.
const sections = [
{ name: 'team', results: this.teamResults },
{ name: 'player', results: this.playerResults },
{ name: 'agent', results: this.agentResults },
{ name: 'gm', results: this.gmResults },
{ name: 'menu', results: this.menuResults },
{ name: 'capology', results: this.capologyResults },
{ name: 'news', results: this.newsResults }
];
let globalIndex = 0;
const allResults = [];
sections.forEach(section => {
section.results.forEach((result, sectionIndex) => {
allResults.push({
...result,
globalIndex: globalIndex++,
section: section.name,
sectionIndex
});
});
});
return allResults;
},
async onSearch() {
if (this.search.trim() === "") {
this.clearResults();
return;
}
this.isLoading = true;
try {
const results = await this.getResults(this.search);
this.playerResults = results.filter(result => result.type === "player");
this.teamResults = results.filter(result => result.type === "team");
this.agentResults = results.filter(result => result.type === "agent");
this.gmResults = results.filter(result => result.type === "gm");
this.capologyResults = results.filter(result => result.type === "capology");
this.newsResults = results.filter(result => result.type === "news");
this.menuResults = results.filter(result => result.type === "navigation");
// Update the flattened results array
this.allResults = this.getAllResults();
// Auto-select first item when results change
this.selectedIndex = this.allResults.length > 0 ? 0 : -1;
this.trackSearch();
} catch (error) {
console.error("Search error:", error);
this.clearResults();
} finally {
this.isLoading = false;
}
},
async getResults(search) {
const response = await fetch("/search_new/autocomplete?q=" + search.trim().toLowerCase());
const data = await response.json();
return data;
},
async getTrendingResults() {
const response = await fetch("/puckpedia/trending");
const data = await response.json();
// Add globalIndex to trending results
this.trendingResults = data.map((result, index) => ({
...result,
globalIndex: index
}));
// Auto-select first trending item when loaded
if (this.trendingResults.length > 0 && this.search.length === 0) {
this.selectedIndex = 0;
}
},
getResultByGlobalIndex(globalIndex) {
// If search is empty, use trending results
if (this.search.length === 0) {
return this.trendingResults[globalIndex] || null;
}
return this.allResults[globalIndex] || null;
},
getItemClasses(globalIndex) {
const isSelected = this.selectedIndex === globalIndex;
return isSelected
? 'bg-blue-100 dark:bg-blue-900 hover:bg-blue-200 dark:hover:bg-blue-800'
: 'hover:bg-slate-200 dark:hover:bg-slate-700';
},
trackSearch() {
// Fire the GA4 recommended `search` event once the user settles on a
// term, deduped so we don't log a hit for every keystroke.
clearTimeout(this._searchTrackTimer);
this._searchTrackTimer = setTimeout(() => {
const term = this.search.trim().toLowerCase();
if (term.length < 2 || term === this._lastTrackedTerm) return;
this._lastTrackedTerm = term;
window.gtag?.('event', 'search', {
search_term: term,
results_count: this.allResults.length
});
}, 800);
},
trackResultClick(result) {
if (!result) return;
window.gtag?.('event', 'search-result-click', {
search_term: this.search.trim().toLowerCase(),
label: result.label,
type: result.type,
destination: result.value,
position: result.globalIndex != null ? result.globalIndex + 1 : null
});
},
trackTrendingClick(result) {
if (!result) return;
const position = this.trendingResults.findIndex(r => r.value === result.value);
window.gtag?.('event', 'trending-search-click', {
label: result.label,
type: result.type,
destination: result.value,
position: position >= 0 ? position + 1 : null
});
},
selectItem(globalIndex) {
const selectedElement = document.getElementById(`search-item-${globalIndex}`);
if (!selectedElement) return;
const anchor = selectedElement.querySelector('a');
if (anchor) {
anchor.click();
}
},
selectItemInNewTab(globalIndex) {
const result = this.getResultByGlobalIndex(globalIndex);
if (result && result.value) {
window.open(result.value, '_blank');
}
},
handleKeyDown(event) {
// Use trending results count when no search, otherwise use search results
const totalResults = this.search.length === 0
? this.trendingResults.length
: this.allResults.length;
switch (event.key) {
case 'ArrowDown':
if (totalResults === 0) return;
event.preventDefault();
this.selectedIndex = this.selectedIndex < totalResults - 1 ? this.selectedIndex + 1 : 0;
this.scrollToSelected();
break;
case 'ArrowUp':
if (totalResults === 0) return;
event.preventDefault();
this.selectedIndex = this.selectedIndex > 0 ? this.selectedIndex - 1 : totalResults - 1;
this.scrollToSelected();
break;
case 'Enter':
event.preventDefault();
// If no results and theyre trying to enter, redirect to the dedicated search page.
if (totalResults === 0) {
if (this.search.length > 0) {
window.location.href = "/search?q=" + this.search.trim().toLowerCase();
}
return;
};
if (this.selectedIndex >= 0) {
if (event.ctrlKey || event.metaKey) {
// Ctrl+Enter or Cmd+Enter: open in new tab
this.selectItemInNewTab(this.selectedIndex);
} else {
// Regular Enter: navigate normally
this.selectItem(this.selectedIndex);
}
}
break;
case 'Escape':
event.preventDefault();
// Let the modal close handler take care of this
break;
}
},
scrollToSelected() {
if (this.selectedIndex >= 0) {
const selectedElement = document.getElementById(`search-item-${this.selectedIndex}`);
if (selectedElement) {
selectedElement.scrollIntoView({
behavior: 'smooth',
block: 'nearest'
});
}
}
},
}));
});
</script>
</div>
<script src="/sites/default/files/js/js_BmFruOcfwMSKVjRA9vcQFfuRuRimG7WpAgdu9yMQ0-c.js?scope=footer&delta=0&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA"></script>
<script src="https://cdn.jsdelivr.net/npm/@alpinejs/collapse@3.14.1/dist/cdn.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/@alpinejs/focus@3.14.1/dist/cdn.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/@alpinejs/mask@3.14.1/dist/cdn.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/@alpinejs/persist@3.14.1/dist/cdn.min.js" defer></script>
<script src="/themes/custom/puck_tw/js/alpine/alpine-tooltip.min.js?tk4y73" defer></script>
<script src="/themes/custom/puck_tw/js/alpine/flatpickr.min.js?tk4y73" defer></script>
<script src="/modules/custom/puckdata/js/puckFilters.js?tk4y73" defer></script>
<script src="/themes/custom/puck_tw/js/alpine/tab_panels.js?tk4y73" defer></script>
<script src="https://cdn.jsdelivr.net/npm/alpinejs@3.14.1/dist/cdn.min.js" defer></script>
<script src="/sites/default/files/js/js_cALgdqkr2C-n4ZLdy7GGU2wqY0TPeULlnuA57td-qx8.js?scope=footer&delta=10&language=en&theme=puck_tw&include=eJxdj1kOwyAMRC9EwpGQAYslbm2xlPb2jfggaX_GnmdLo3FcUPvSBWiH3tjxQwgbqsAcCE2DoMMp_36HDG8l3R2mDQ0k6Ym5LhC5ZSjLimzgjSV2xw-7By7eLaUasXist-9zCvoEWyC2QOtQRxK8kloS-UznoUbLULxem3olHFVPnQW-PPtjGA"></script>
<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"c5f8d1692bdc4fc49b700ea87428202a"}' crossorigin="anonymous"></script>
</body>
</html>
Sitemap
Кол-во: 0
XML-карта сайта для поисковиков
?
Sitemap.xml помогает поисковику быстрее находить и индексировать страницы. Особенно важен для крупных сайтов и новых страниц, на которые ещё нет входящих ссылок.
Robots.txt не содержит ссылку на карту сайта. Рекомендуется добавить карту сайта и указать ссылку на нее в robots.txt.
Внутренние ссылки
Кол-во: 182
Ссылки на другие страницы своего сайта
?
Внутренние ссылки распределяют ссылочный вес между страницами и помогают поисковику обходить сайт. Пустые анкоры и ссылки на запрещённые robots.txt страницы — типичные ошибки.
Внутренних ссылок на странице 182 слишком много. Проведите оптимизацию сайта!
Внутренние ссылки не запрещены к индексации в robots.txt.
На странице присутствуют изображения 154.
Показать первые 100 внутренних ссылок
| Url | Анкор | Состояние | Анализировать |
|---|---|---|---|
| /gms |
<i class="fas fa-user-tie !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">GM Tracker</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Stats & History</span>
</span>
|
|
Анализировать url |
| /players |
<i class="fa fa-chart-simple !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Player Dashboard</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Filter by stats & contracts</span>
</span>
|
|
Анализировать url |
| /buyout-calculator |
Buyout Calculator
|
|
Анализировать url |
| /deferred |
Deferred Salary Calculator
|
|
Анализировать url |
| /pickvalue |
Pick Value Calculator
|
|
Анализировать url |
| /tax-calculator |
Tax Calculator
|
|
Анализировать url |
| /entry-level-slides |
Entry Level Slide Tracker
|
|
Анализировать url |
| /group6 |
Group 6 UFA Tracker
|
|
Анализировать url |
| /waivers-tracker |
Waivers Tracker
|
|
Анализировать url |
| /offer-sheet-tracker |
Offer Sheet Tracker
|
|
Анализировать url |
| /lineups |
Lineups
|
|
Анализировать url |
| /scouting-reports/landing |
Scouting Lists
|
|
Анализировать url |
| /scouting-reports/videos |
Video Vault
|
|
Анализировать url |
| /agents |
Agents
|
|
Анализировать url |
| /draft |
Draft
|
|
Анализировать url |
| /salary-cap |
Capology
|
|
Анализировать url |
| /news |
News & Analysis
|
|
Анализировать url |
| /signings |
Signings
|
|
Анализировать url |
| /trades |
Trades
|
|
Анализировать url |
| /injuries |
Injuries
|
|
Анализировать url |
| /transactions |
Transactions
|
|
Анализировать url |
| /waiver-wire |
Waiver Wire
|
|
Анализировать url |
| /puckpedia-plus?ref=navbar_signup |
Sign Up
|
|
Анализировать url |
| /gms |
<i class="fas fa-user-tie !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">GM Tracker</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Stats & History</span>
</span>
|
|
Анализировать url |
| /players |
<i class="fa fa-chart-simple !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Player Dashboard</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Filter by stats & contracts</span>
</span>
|
|
Анализировать url |
| /buyout-calculator |
Buyout Calculator
|
|
Анализировать url |
| /deferred |
Deferred Salary Calculator
|
|
Анализировать url |
| /pickvalue |
Pick Value Calculator
|
|
Анализировать url |
| /tax-calculator |
Tax Calculator
|
|
Анализировать url |
| /entry-level-slides |
Entry Level Slide Tracker
|
|
Анализировать url |
| /group6 |
Group 6 UFA Tracker
|
|
Анализировать url |
| /waivers-tracker |
Waivers Tracker
|
|
Анализировать url |
| /offer-sheet-tracker |
Offer Sheet Tracker
|
|
Анализировать url |
| /lineups |
Lineups
|
|
Анализировать url |
| /scouting-reports/landing |
Scouting Lists
|
|
Анализировать url |
| /scouting-reports/videos |
Video Vault
|
|
Анализировать url |
| /agents |
Agents
|
|
Анализировать url |
| /draft |
Draft
|
|
Анализировать url |
| /salary-cap |
Capology
|
|
Анализировать url |
| /news |
News
|
|
Анализировать url |
| /transactions |
Transactions
|
|
Анализировать url |
| /signings |
Signings
|
|
Анализировать url |
| /trades |
Trades
|
|
Анализировать url |
| /injuries |
Injuries
|
|
Анализировать url |
| /waiver-wire |
Waivers
|
|
Анализировать url |
| /nhl-free-agency |
Track the Deals<i class='fas fa-chevron-right'></i>
|
|
Анализировать url |
| /teams |
View All<i class='fas fa-chevron-right'></i>
|
|
Анализировать url |
| /team/anaheim-ducks |
<span class="sm:hidden">ANA</span>
<span class="hidden sm:inline-block">Anaheim</span>
<span class="sr-only">Ducks</span>
|
|
Анализировать url |
| /team/boston-bruins |
<span class="sm:hidden">BOS</span>
<span class="hidden sm:inline-block">Boston</span>
<span class="sr-only">Bruins</span>
|
|
Анализировать url |
| /team/buffalo-sabres |
<span class="sm:hidden">BUF</span>
<span class="hidden sm:inline-block">Buffalo</span>
<span class="sr-only">Sabres</span>
|
|
Анализировать url |
| /team/carolina-hurricanes |
<span class="sm:hidden">CAR</span>
<span class="hidden sm:inline-block">Carolina</span>
<span class="sr-only">Hurricanes</span>
|
|
Анализировать url |
| /team/columbus-blue-jackets |
<span class="sm:hidden">CBJ</span>
<span class="hidden sm:inline-block">Columbus</span>
<span class="sr-only">Blue Jackets</span>
|
|
Анализировать url |
| /team/calgary-flames |
<span class="sm:hidden">CGY</span>
<span class="hidden sm:inline-block">Calgary</span>
<span class="sr-only">Flames</span>
|
|
Анализировать url |
| /team/chicago-blackhawks |
<span class="sm:hidden">CHI</span>
<span class="hidden sm:inline-block">Chicago</span>
<span class="sr-only">Blackhawks</span>
|
|
Анализировать url |
| /team/colorado-avalanche |
<span class="sm:hidden">COL</span>
<span class="hidden sm:inline-block">Colorado</span>
<span class="sr-only">Avalanche</span>
|
|
Анализировать url |
| /team/dallas-stars |
<span class="sm:hidden">DAL</span>
<span class="hidden sm:inline-block">Dallas</span>
<span class="sr-only">Stars</span>
|
|
Анализировать url |
| /team/detroit-red-wings |
<span class="sm:hidden">DET</span>
<span class="hidden sm:inline-block">Detroit</span>
<span class="sr-only">Red Wings</span>
|
|
Анализировать url |
| /team/edmonton-oilers |
<span class="sm:hidden">EDM</span>
<span class="hidden sm:inline-block">Edmonton</span>
<span class="sr-only">Oilers</span>
|
|
Анализировать url |
| /team/florida-panthers |
<span class="sm:hidden">FLA</span>
<span class="hidden sm:inline-block">Florida</span>
<span class="sr-only">Panthers</span>
|
|
Анализировать url |
| /team/los-angeles-kings |
<span class="sm:hidden">LAK</span>
<span class="hidden sm:inline-block">Los Angeles</span>
<span class="sr-only">Kings</span>
|
|
Анализировать url |
| /team/minnesota-wild |
<span class="sm:hidden">MIN</span>
<span class="hidden sm:inline-block">Minnesota</span>
<span class="sr-only">Wild</span>
|
|
Анализировать url |
| /team/montreal-canadiens |
<span class="sm:hidden">MTL</span>
<span class="hidden sm:inline-block">Montreal</span>
<span class="sr-only">Canadiens</span>
|
|
Анализировать url |
| /team/nashville-predators |
<span class="sm:hidden">NAS</span>
<span class="hidden sm:inline-block">Nashville</span>
<span class="sr-only">Predators</span>
|
|
Анализировать url |
| /team/new-jersey-devils |
<span class="sm:hidden">NJD</span>
<span class="hidden sm:inline-block">New Jersey</span>
<span class="sr-only">Devils</span>
|
|
Анализировать url |
| /team/new-york-islanders |
<span class="sm:hidden">NYI</span>
<span class="hidden sm:inline-block">New York</span>
<span class="sr-only">Islanders</span>
|
|
Анализировать url |
| /team/new-york-rangers |
<span class="sm:hidden">NYR</span>
<span class="hidden sm:inline-block">New York</span>
<span class="sr-only">Rangers</span>
|
|
Анализировать url |
| /team/ottawa-senators |
<span class="sm:hidden">OTT</span>
<span class="hidden sm:inline-block">Ottawa</span>
<span class="sr-only">Senators</span>
|
|
Анализировать url |
| /team/philadelphia-flyers |
<span class="sm:hidden">PHI</span>
<span class="hidden sm:inline-block">Philadelphia</span>
<span class="sr-only">Flyers</span>
|
|
Анализировать url |
| /team/pittsburgh-penguins |
<span class="sm:hidden">PIT</span>
<span class="hidden sm:inline-block">Pittsburgh</span>
<span class="sr-only">Penguins</span>
|
|
Анализировать url |
| /team/seattle-kraken |
<span class="sm:hidden">SEA</span>
<span class="hidden sm:inline-block">Seattle</span>
<span class="sr-only">Kraken</span>
|
|
Анализировать url |
| /team/san-jose-sharks |
<span class="sm:hidden">SJS</span>
<span class="hidden sm:inline-block">San Jose</span>
<span class="sr-only">Sharks</span>
|
|
Анализировать url |
| /team/st-louis-blues |
<span class="sm:hidden">STL</span>
<span class="hidden sm:inline-block">St. Louis</span>
<span class="sr-only">Blues</span>
|
|
Анализировать url |
| /team/tampa-bay-lightning |
<span class="sm:hidden">TBL</span>
<span class="hidden sm:inline-block">Tampa Bay</span>
<span class="sr-only">Lightning</span>
|
|
Анализировать url |
| /team/toronto-maple-leafs |
<span class="sm:hidden">TOR</span>
<span class="hidden sm:inline-block">Toronto</span>
<span class="sr-only">Maple Leafs</span>
|
|
Анализировать url |
| /team/utah-mammoth |
<span class="sm:hidden">UTA</span>
<span class="hidden sm:inline-block">Utah</span>
<span class="sr-only">Mammoth</span>
|
|
Анализировать url |
| /team/vancouver-canucks |
<span class="sm:hidden">VAN</span>
<span class="hidden sm:inline-block">Vancouver</span>
<span class="sr-only">Canucks</span>
|
|
Анализировать url |
| /team/vegas-golden-knights |
<span class="sm:hidden">VGK</span>
<span class="hidden sm:inline-block">Vegas</span>
<span class="sr-only">Golden Knights</span>
|
|
Анализировать url |
| /team/washington-capitals |
<span class="sm:hidden">WAS</span>
<span class="hidden sm:inline-block">Washington</span>
<span class="sr-only">Capitals</span>
|
|
Анализировать url |
| /team/winnipeg-jets |
<span class="sm:hidden">WPG</span>
<span class="hidden sm:inline-block">Winnipeg</span>
<span class="sr-only">Jets</span>
|
|
Анализировать url |
| /nhl-free-agency |
Track the Deals<i class='fas fa-chevron-right'></i>
|
|
Анализировать url |
| /signings |
All Signings<i class='fas fa-chevron-right'></i>
|
|
Анализировать url |
| /signing/10779 |
Lucius, Cruz
|
|
Анализировать url |
| /signing/10780 |
Iorio, Vincent
|
|
Анализировать url |
| /signing/10778 |
Morrow, Scott
|
|
Анализировать url |
| /signing/10777 |
McDonald, Hunter
|
|
Анализировать url |
| /signing/10776 |
Pastujov, Sasha
|
|
Анализировать url |
| /signing/10775 |
Novotný, Adam
|
|
Анализировать url |
| /signing/10774 |
Bauer, Tyrel
|
|
Анализировать url |
| /signing/10772 |
Koivunen, Ville
|
|
Анализировать url |
| /signing/10773 |
Grebenkin, Nikita
|
|
Анализировать url |
| /signing/10771 |
Szuber, Maksymilian
|
|
Анализировать url |
| /signing/10769 |
Novak, Thomas
|
|
Анализировать url |
| /signing/10770 |
Graf, Collin
|
|
Анализировать url |
| /trades |
All Trades<i class='fas fa-chevron-right'></i>
|
|
Анализировать url |
| /trade/1203 |
<i class="fad fa-right-left mr-1"></i>
|
|
Анализировать url |
| /trade/1202 |
<i class="fad fa-right-left mr-1"></i>
|
|
Анализировать url |
| /trade/1201 |
<i class="fad fa-right-left mr-1"></i>
|
|
Анализировать url |
| /trade/1200 |
<i class="fad fa-right-left mr-1"></i>
|
|
Анализировать url |
| /trade/1199 |
<i class="fad fa-right-left mr-1"></i>
|
|
Анализировать url |
| /trade/1198 |
<i class="fad fa-right-left mr-1"></i>
|
|
Анализировать url |
Внешние ссылки
Кол-во: 52
Ссылки на сторонние сайты
?
Исходящие внешние ссылки передают часть ссылочного веса на чужие сайты. Ссылки на авторитетные ресурсы безопасны; ссылки на мусорные сайты могут навредить репутации страницы.
Внешних ссылок на странице 52 слишком много. Спрячьте лишние ссылки в тег noindex или атрибут rel='nofollow'!
На странице ссылки с атрибутом rel='nofollow' 2.
Показать внешние ссылки
| Url | Анкор | Анализировать |
|---|---|---|
| comparables.puckpedia.com |
<i class="fa fa-file-contract !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Contract Comparables</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Find similar contracts</span>
</span>
|
Анализировать url |
| puckpedia.com |
Podcast
|
Анализировать url |
| puckgm.puckpedia.com |
<span class="logotype_gm">Puck<span>GM</span></span>
|
Анализировать url |
| comparables.puckpedia.com |
<i class="fa fa-file-contract !text-slate-300 !text-xl w-7 text-center flex-none"></i>
<span class="flex flex-col">
<span class="font-bold leading-tight uppercase">Contract Comparables</span>
<span class="text-sm text-slate-400 font-normal leading-tight">Find similar contracts</span>
</span>
|
Анализировать url |
| puckpedia.com |
Podcast
|
Анализировать url |
| puckgm.puckpedia.com |
<span class="pr-1 logotype_gm">Puck<span>GM</span></span><i class="fad fa-caret-right"></i>
|
Анализировать url |
| twitter.com |
Aug 21
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#FlyTogether
|
|
| twitter.com |
#124
|
|
| twitter.com |
@BenHankinson
|
|
| t.co |
t.co/7DjVSZVxNt
|
Анализировать url |
| twitter.com |
Aug 20
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#LGRW
|
|
| twitter.com |
#Smashville
|
|
| t.co |
t.co/VZ0RpSccAY
|
Анализировать url |
| twitter.com |
Aug 19
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#FlyTogether
|
|
| twitter.com |
#LetsGoPens
|
|
| twitter.com |
Aug 18
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#LetsGoFlyers
|
|
| twitter.com |
@the_team_hockey
|
|
| t.co |
t.co/46nZwUUvJS
|
Анализировать url |
| twitter.com |
Aug 18
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#LetsGoFlyers
|
|
| twitter.com |
@the_team_hockey
|
|
| t.co |
t.co/46nZwUUvJS
|
Анализировать url |
| twitter.com |
Aug 17
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#Canes
|
|
| twitter.com |
#Sabres
|
|
| twitter.com |
Aug 13
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#GoHabsGo
|
|
| twitter.com |
@wadearnott
|
|
| t.co |
t.co/3balPf56Ek
|
Анализировать url |
| twitter.com |
Aug 11
|
|
| twitter.com |
@PuckPedia
|
|
| twitter.com |
#Canucks
|
|
| twitter.com |
#24
|
|
| twitter.com |
@GJTSC
|
|
| t.co |
t.co/pvUWPpxG0y
|
Анализировать url |
| theprohockeygroup.com |
The Pro Hockey Group
|
Анализировать url |
| puckdoku.com |
Puckdoku
|
Анализировать url |
| puckgm.puckpedia.com |
PuckGM
|
Анализировать url |
| x.com |
<i class="text-lg fab fa-x-twitter"></i>
|
Анализировать url |
| puckpedia.com |
PuckPedia+
|
Анализировать url |
| puckpedia.com |
PuckPedia+
|
Анализировать url |
Конкуренты Готовность: 0%
Конкуренты в Яндексе
Кол-во: 0
Топ сайтов-конкурентов в Яндексе
?
Сайты, чаще всего появляющиеся в ТОПе Яндекса по запросам из семантического ядра этой страницы.
Мы не нашли у вас конкурентов в Яндексе. Сайт или очень молодой или плохо продвигается.
Конкурентов в ТОП-10 Яндекса не нашлось.
Конкуренты в Google
Кол-во: 0
Топ сайтов-конкурентов в Google
?
Сайты, чаще всего появляющиеся в ТОПе Google по запросам из семантического ядра этой страницы.
Конкуренты в Google тоже не найдены. Займитесь продвижением сайта!
Конкурентов в ТОП-10 Google не нашлось.
ЗоЗПП: права потребителей Готовность: 100%
Нарушения
Не выявлены
Признаков дистанционной продажи товаров (интернет-магазина) не обнаружено — требования ЗоЗПП о раскрытии информации продавца к сайту не применяются. Нарушений нет.
ФЗ-149: рекомендательные технологии Готовность: 100%
Нарушения
Не выявлены
Рекомендательные блоки («с этим покупают», «похожие товары» и т.п.) на сайте не обнаружены — требования ст. 10.7 ФЗ-149 к сайту не применяются. Нарушений нет.
ФЗ-38: реклама Готовность: 100%
Нарушения
Не выявлены
Рекламных тематик с обязательными оговорками (медицина, БАД, кредиты и займы, новостройки) на сайте не обнаружено. Нарушений нет.
ФЗ-436: защита детей Готовность: 100%
Нарушения
Не выявлены
Признаков информационной продукции (новости, видео, книги, игры, курсы) не обнаружено — обязательная возрастная маркировка по ФЗ-436 сайту не требуется. Нарушений нет.
Вердикт
Оптимизация сайта nhlnumbers.com выполнена всего на 47%. Чтобы исправить ситуацию и попасть в ТОП необходимо:
Исправьте ошибки в мета-тегах.
Исправьте ошибки индексации.
Поделитесь с друзьями: