You can override >Magento\Catalog\Model\ResourceModel\Product\Collection class and join your custom collection with using **_initSelect()** function Example: protected function _initSelect() { $this->getSelect()->joinRight( ['secondTable' => $this->getTable('custom_table')], 'secondTable.id = main_table.entity_id'); return $this; }