Является ли хорошим решением вывод результата из контролера напрямую в шаблоне blade?
В таких случаях лучше использовать inject@inject('metrics', 'App\Services\MetricsService')

<div>
    Monthly Revenue: {{ $metrics->monthlyRevenue() }}.
</div>
Также этот сервис сделай синглтоном где в конструкторе будет брать данные с бд, а в методах их отдавать таким образом не будет несколько запросов даже если один компонент подключиться на странице несколько раз
P.S. Здесь в ответах был еще вариант расшарить переменные в провайдере но автор почему-то удалил его, а вариант вполне неплохой когда код точно есть на каждой странице (например меню)
Так что лучше всего будет попробовать два варианта и потом решить какой удобнее в твоем случае
В таких случаях лучше использовать inject@inject('metrics', 'App\Services\MetricsService')

<div>
    Monthly Revenue: {{ $metrics->monthlyRevenue() }}.
</div>
Также этот сервис сделай синглтоном где в конструкторе будет брать данные с бд, а в методах их отдавать таким образом не будет несколько запросов даже если один компонент подключиться на странице несколько раз
P.S. Здесь в ответах был еще вариант расшарить переменные в провайдере но автор почему-то удалил его, а вариант вполне неплохой когда код точно есть на каждой странице (например меню)
Так что лучше всего будет попробовать два варианта и потом решить какой удобнее в твоем случае