diff --git a/esphome/components/ethernet/ethernet_component.cpp b/esphome/components/ethernet/ethernet_component.cpp
index 08f5fa6642..68a6e617fc 100644
--- a/esphome/components/ethernet/ethernet_component.cpp
+++ b/esphome/components/ethernet/ethernet_component.cpp
@@ -580,7 +580,7 @@ void EthernetComponent::get_eth_mac_address_raw(uint8_t *mac) {
 
 std::string EthernetComponent::get_eth_mac_address_pretty() {
   uint8_t mac[6];
-  get_mac_address_raw(mac);
+  get_eth_mac_address_raw(mac);
   return str_snprintf("%02X:%02X:%02X:%02X:%02X:%02X", 17, mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
 }
 
diff --git a/esphome/components/ethernet_info/ethernet_info_text_sensor.h b/esphome/components/ethernet_info/ethernet_info_text_sensor.h
index 94eed886e5..2e67694bbd 100644
--- a/esphome/components/ethernet_info/ethernet_info_text_sensor.h
+++ b/esphome/components/ethernet_info/ethernet_info_text_sensor.h
@@ -62,6 +62,7 @@ class DNSAddressEthernetInfo : public PollingComponent, public text_sensor::Text
 class MACAddressEthernetInfo : public Component, public text_sensor::TextSensor {
  public:
   void setup() override { this->publish_state(ethernet::global_eth_component->get_eth_mac_address_pretty()); }
+  float get_setup_priority() const override { return setup_priority::ETHERNET; }
   std::string unique_id() override { return get_mac_address() + "-ethernetinfo-mac"; }
   void dump_config() override;
 };