How to get stock status by SKU Magento 2?

Magento 2, You can get stock status by Product SKU. If you want to load Stock details using SKU, you can get the details of the Stock related information.

You need to use Magento\CatalogInventory\Model\StockRegistry to fetch stock status.

Using Stock Status Data, You can get the stock related info at the Website level, Stock is in stock, Backorder status, Qty, ProductId, Min. Qty, Manage Stock and many other stock field data.

namespace Jesadiya\StockStatus\Model;

use Psr\Log\LoggerInterface;
use Magento\Store\Model\StoreManagerInterface;
use Magento\CatalogInventory\Model\StockRegistry;

class StockStatus
    /** @var LoggerInterface */
    protected $logger;

     * @var StoreManagerInterface
    private $storeManager;

     * @var StockRegistry
    private $stockRegistry;

    public function __construct(
        LoggerInterface $logger,
        StoreManagerInterface $storeManager,
        StockRegistry $stockRegistry,
    ) {
        $this->logger = $logger;
        $this->stockRegistry = $stockRegistry;
        $this->storeManager = $storeManager;

     * country full name
     * @return string
    public function getStockStatus($sku)
        $stockData = null;
        try {
            $stockStatus = $this->stockRegistry->getStockStatusBySku(

            $stockData = $stockStatus->getStockItem();

        } catch (\Exception $exception) {
        return $stockData;

Get the stock status using SKU value as a method parameter,

$sku = '111A1234';
$stockData = $this->getStockStatus($sku);

When you debug the Stock data you got all the required information of the Product Stock.