Почему на продакшене из базы возвращается строка а не число?
Чтобы получить число, нужно чтобы были соблюдены несколько условий
- установлен драйвер mysqlnd
- отключена эмуляция подготовленных выражений в PDO
- используется подготовленный запрос.
Если нет возможности изменить настройки сервера, что актуально в случае в виртуальным хостингом, проблему можно решить настройкой приведения типов в модели. Гугли Laravel model attributes casting