diff --git a/src/shared/Modules/RefuelingVisualizer/000.png b/src/shared/Modules/RefuelingVisualizer/000.png
new file mode 100644
index 0000000000000000000000000000000000000000..22a6f478948b3f04ccd02686ac4765c0365a844d
Binary files /dev/null and b/src/shared/Modules/RefuelingVisualizer/000.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/001.png b/src/shared/Modules/RefuelingVisualizer/001.png
new file mode 100644
index 0000000000000000000000000000000000000000..3e071d78f02899ab63b29d8f1ee8c3fbd96849ed
Binary files /dev/null and b/src/shared/Modules/RefuelingVisualizer/001.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/010.png b/src/shared/Modules/RefuelingVisualizer/010.png
new file mode 100644
index 0000000000000000000000000000000000000000..2352fde52919733e43e9b46a621b4bcc69b05184
Binary files /dev/null and b/src/shared/Modules/RefuelingVisualizer/010.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/011.png b/src/shared/Modules/RefuelingVisualizer/011.png
new file mode 100644
index 0000000000000000000000000000000000000000..42b7d633a63990d77e126a96639c9b3c3adffe5e
Binary files /dev/null and b/src/shared/Modules/RefuelingVisualizer/011.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/100.png b/src/shared/Modules/RefuelingVisualizer/100.png
new file mode 100644
index 0000000000000000000000000000000000000000..5ef35bfa9988dbc282c81666bdd21dd33b70fdfb
Binary files /dev/null and b/src/shared/Modules/RefuelingVisualizer/100.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/101.png b/src/shared/Modules/RefuelingVisualizer/101.png
new file mode 100644
index 0000000000000000000000000000000000000000..0504fd7c00e2a870c479447a974395c78052d17a
Binary files /dev/null and b/src/shared/Modules/RefuelingVisualizer/101.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/110.png b/src/shared/Modules/RefuelingVisualizer/110.png
new file mode 100644
index 0000000000000000000000000000000000000000..a65b57d78105c90e8cb979b29a2618933fceeaa6
Binary files /dev/null and b/src/shared/Modules/RefuelingVisualizer/110.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/111.png b/src/shared/Modules/RefuelingVisualizer/111.png
index 31deb6afe3fd2a570c510013724094ac2986cdc0..de8b18cbc00be8da2ebe4e4778671da2309bfd92 100644
Binary files a/src/shared/Modules/RefuelingVisualizer/111.png and b/src/shared/Modules/RefuelingVisualizer/111.png differ
diff --git a/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.cpp b/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.cpp
index f4ba2d5ac9808d981fdb8a5a21ccad580128780b..5524041ee710289c7a5fc004c6785639e481fb19 100644
--- a/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.cpp
+++ b/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.cpp
@@ -72,6 +72,24 @@ void RefuelingVisualizer::setupUi()
         "border-width: 1px; border-style: solid; border-radius: 1px; "
         "border-color: white; background-color: rgb(82, 142, 56)";
 
+    // DATA LABELS STYLE
+    // Headers
+    QString HeaderStyle =
+        "border-width: 1px; border-style: solid; border-color: rgb(100, 100, "
+        "100); background-color: rgba(51, 153, 255, 7%);"
+        "border-bottom-style: double; font: bold; border-bottom-left-radius: "
+        "0px; border-bottom-right-radius: 0px;";
+    // Data
+    QString headerLabelStyle =
+        "border-width: 1px; border-style: dashed; border-color: rgb(100, 100, "
+        "100); border-radius: 0px; border-left-style: solid; "
+        "border-right-style: solid;";
+    QString lastHeaderLabelStyle =
+        "border-width: 1px; border-style: solid; border-color: rgb(100, 100, "
+        "100); border-radius: 0px; border-top-style: dashed; "
+        "border-bottom-left-radius: 1px; border-bottom-right-radius: 1px;";
+    QString dataStyle = "border-width: 0px;";
+
     // TARS STATE
     QLabel* labelTars = new QLabel;
     labelTars->setText(RefuelingVisualizerCommandList::commandLabels[0]);
@@ -99,25 +117,194 @@ void RefuelingVisualizer::setupUi()
         outerLayout->addWidget(labelValve, 5499, (i - 1) * 1666, 70, 1666);
     }
 
-    // topTankPressureLabelIm = new QLabel;
-    // topTankPressureLabelIm->setAlignment(Qt::AlignCenter);
-    // topTankPressureLabelIm->setContentsMargins(4, 4, 4, 4);
-    // outerLayout->addWidget(topTankPressureLabelIm, 50, 50, 15, 20);
-
-    // loadcellTank = new QLabel;
-    // loadcellTank->setAlignment(Qt::AlignCenter);
-    // loadcellTank->setContentsMargins(4, 4, 4, 4);
-    // outerLayout->addWidget(loadcellTank, 50, 77, 15, 20);
-
-    // QFrame* line = new QFrame();
-    // line->setGeometry(QRect(50, 150, 100, 50));
-    // line->setFrameShape(QFrame::HLine);
-    // line->setStyleSheet("background-color:rgb(255,255,255)");
-    // outerLayout->addWidget(line, 50, 150, 1, 50);
-    setLayout(outerLayout);
+    // ----------------------------------------------------------------------
+    // TANK DATA VISUALIZER -------------------------------------------------
+    // Headers
+    tankHeaderLabel = new QLabel;
+    tankHeaderLabel->setText((QString) "TANK");
+    tankHeaderLabel->setAlignment(Qt::AlignCenter);
+    tankHeaderLabel->setContentsMargins(4, 4, 4, 4);
+    tankHeaderLabel->setStyleSheet(HeaderStyle);
+    outerLayout->addWidget(tankHeaderLabel, 1180, 1400, 50, 2000);
+
+    loadcellTankLabel = new QLabel;
+    loadcellTankLabel->setText((QString) "Loadcell:");
+    loadcellTankLabel->setAlignment(Qt::AlignLeft);
+    loadcellTankLabel->setContentsMargins(4, 4, 4, 4);
+    loadcellTankLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(loadcellTankLabel, 1230, 1400, 40, 2000);
+
+    tankTemperatureLabel = new QLabel;
+    tankTemperatureLabel->setText((QString) "Temperature:");
+    tankTemperatureLabel->setAlignment(Qt::AlignLeft);
+    tankTemperatureLabel->setContentsMargins(4, 4, 4, 4);
+    tankTemperatureLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(tankTemperatureLabel, 1270, 1400, 40, 2000);
+
+    topTankPressureLabel = new QLabel;
+    topTankPressureLabel->setText((QString) "TOP Pressure:");
+    topTankPressureLabel->setAlignment(Qt::AlignLeft);
+    topTankPressureLabel->setContentsMargins(4, 4, 4, 4);
+    topTankPressureLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(topTankPressureLabel, 1310, 1400, 40, 2000);
+
+    bottomTankPressureLabel = new QLabel;
+    bottomTankPressureLabel->setText((QString) "BOTTOM Pressure:");
+    bottomTankPressureLabel->setAlignment(Qt::AlignLeft);
+    bottomTankPressureLabel->setContentsMargins(4, 4, 4, 4);
+    bottomTankPressureLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(bottomTankPressureLabel, 1350, 1400, 40, 2000);
+
+    floatingLevelLabel = new QLabel;
+    floatingLevelLabel->setText((QString) "Floating level:");
+    floatingLevelLabel->setAlignment(Qt::AlignLeft);
+    floatingLevelLabel->setContentsMargins(4, 4, 4, 4);
+    floatingLevelLabel->setStyleSheet(lastHeaderLabelStyle);
+    outerLayout->addWidget(floatingLevelLabel, 1390, 1400, 40, 2000);
+
+    // Data
+    loadcellTankDataLabel = new QLabel;
+    loadcellTankDataLabel->setText((QString) "0    KG");
+    loadcellTankDataLabel->setAlignment(Qt::AlignRight);
+    loadcellTankDataLabel->setContentsMargins(4, 4, 4, 4);
+    loadcellTankDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(loadcellTankDataLabel, 1233, 2350, 34, 1047);
+
+    tankTemperatureDataLabel = new QLabel;
+    tankTemperatureDataLabel->setText((QString) "0    °C");
+    tankTemperatureDataLabel->setAlignment(Qt::AlignRight);
+    tankTemperatureDataLabel->setContentsMargins(4, 4, 4, 4);
+    tankTemperatureDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(tankTemperatureDataLabel, 1273, 2350, 34, 1047);
+
+    topTankPressureDataLabel = new QLabel;
+    topTankPressureDataLabel->setText((QString) "0   bar");
+    topTankPressureDataLabel->setAlignment(Qt::AlignRight);
+    topTankPressureDataLabel->setContentsMargins(4, 4, 4, 4);
+    topTankPressureDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(topTankPressureDataLabel, 1313, 2350, 34, 1047);
+
+    bottomTankPressureDataLabel = new QLabel;
+    bottomTankPressureDataLabel->setText((QString) "0   bar");
+    bottomTankPressureDataLabel->setAlignment(Qt::AlignRight);
+    bottomTankPressureDataLabel->setContentsMargins(4, 4, 4, 4);
+    bottomTankPressureDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(bottomTankPressureDataLabel, 1353, 2350, 34, 1047);
+
+    floatingLevelDataLabel = new QLabel;
+    floatingLevelDataLabel->setText((QString) "NOT REACHED");
+    floatingLevelDataLabel->setAlignment(Qt::AlignRight);
+    floatingLevelDataLabel->setContentsMargins(4, 4, 4, 4);
+    floatingLevelDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(floatingLevelDataLabel, 1393, 2350, 34, 1047);
+
+    // ----------------------------------------------------------------------
+    // VESSEL DATA VISUALIZER -----------------------------------------------
+    // Headers
+    vesselHeaderLabel = new QLabel;
+    vesselHeaderLabel->setText((QString) "VESSEL");
+    vesselHeaderLabel->setAlignment(Qt::AlignCenter);
+    vesselHeaderLabel->setContentsMargins(4, 4, 4, 4);
+    vesselHeaderLabel->setStyleSheet(HeaderStyle);
+    outerLayout->addWidget(vesselHeaderLabel, 500, 2300, 50, 2000);
+
+    loadcellVesselLabel = new QLabel;
+    loadcellVesselLabel->setText((QString) "Loadcell:");
+    loadcellVesselLabel->setAlignment(Qt::AlignLeft);
+    loadcellVesselLabel->setContentsMargins(4, 4, 4, 4);
+    loadcellVesselLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(loadcellVesselLabel, 550, 2300, 40, 2000);
+
+    vesselPressureLabel = new QLabel;
+    vesselPressureLabel->setText((QString) "Pressure:");
+    vesselPressureLabel->setAlignment(Qt::AlignLeft);
+    vesselPressureLabel->setContentsMargins(4, 4, 4, 4);
+    vesselPressureLabel->setStyleSheet(lastHeaderLabelStyle);
+    outerLayout->addWidget(vesselPressureLabel, 590, 2300, 40, 2000);
+
+    // Data
+    loadcellVesselDataLabel = new QLabel;
+    loadcellVesselDataLabel->setText((QString) "0    KG");
+    loadcellVesselDataLabel->setAlignment(Qt::AlignRight);
+    loadcellVesselDataLabel->setContentsMargins(4, 4, 4, 4);
+    loadcellVesselDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(loadcellVesselDataLabel, 553, 3240, 34, 1047);
+
+    vesselPressureDataLabel = new QLabel;
+    vesselPressureDataLabel->setText((QString) "0   bar");
+    vesselPressureDataLabel->setAlignment(Qt::AlignRight);
+    vesselPressureDataLabel->setContentsMargins(4, 4, 4, 4);
+    vesselPressureDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(vesselPressureDataLabel, 593, 3240, 34, 1047);
+
+    // ----------------------------------------------------------------------
+    // CART DATA VISUALIZER -------------------------------------------------
+    // Headers
+    cartHeaderLabel = new QLabel;
+    cartHeaderLabel->setText((QString) "CART");
+    cartHeaderLabel->setAlignment(Qt::AlignCenter);
+    cartHeaderLabel->setContentsMargins(4, 4, 4, 4);
+    cartHeaderLabel->setStyleSheet(HeaderStyle);
+    outerLayout->addWidget(cartHeaderLabel, 2500, 2000, 50, 2000);
+
+    cartTimestampLabel = new QLabel;
+    cartTimestampLabel->setText((QString) "Timestamp:");
+    cartTimestampLabel->setAlignment(Qt::AlignLeft);
+    cartTimestampLabel->setContentsMargins(4, 4, 4, 4);
+    cartTimestampLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(cartTimestampLabel, 2550, 2000, 40, 2000);
+
+    cartFillingPressureLabel = new QLabel;
+    cartFillingPressureLabel->setText((QString) "Filling Pressure:");
+    cartFillingPressureLabel->setAlignment(Qt::AlignLeft);
+    cartFillingPressureLabel->setContentsMargins(4, 4, 4, 4);
+    cartFillingPressureLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(cartFillingPressureLabel, 2590, 2000, 40, 2000);
+
+    cartBatteryLabel = new QLabel;
+    cartBatteryLabel->setText((QString) "Battery:");
+    cartBatteryLabel->setAlignment(Qt::AlignLeft);
+    cartBatteryLabel->setContentsMargins(4, 4, 4, 4);
+    cartBatteryLabel->setStyleSheet(headerLabelStyle);
+    outerLayout->addWidget(cartBatteryLabel, 2630, 2000, 40, 2000);
+
+    cartCurrentLabel = new QLabel;
+    cartCurrentLabel->setText((QString) "Current:");
+    cartCurrentLabel->setAlignment(Qt::AlignLeft);
+    cartCurrentLabel->setContentsMargins(4, 4, 4, 4);
+    cartCurrentLabel->setStyleSheet(lastHeaderLabelStyle);
+    outerLayout->addWidget(cartCurrentLabel, 2670, 2000, 40, 2000);
+
+    // Data
+    cartTimestampDataLabel = new QLabel;
+    cartTimestampDataLabel->setText((QString) "0      s");
+    cartTimestampDataLabel->setAlignment(Qt::AlignRight);
+    cartTimestampDataLabel->setContentsMargins(4, 4, 4, 4);
+    cartTimestampDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(cartTimestampDataLabel, 2550, 2940, 34, 1047);
+
+    cartFillingPressureDataLabel = new QLabel;
+    cartFillingPressureDataLabel->setText((QString) "0   bar");
+    cartFillingPressureDataLabel->setAlignment(Qt::AlignRight);
+    cartFillingPressureDataLabel->setContentsMargins(4, 4, 4, 4);
+    cartFillingPressureDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(cartFillingPressureDataLabel, 2590, 2940, 34, 1047);
+
+    cartBatteryDataLabel = new QLabel;
+    cartBatteryDataLabel->setText((QString) "0    %");
+    cartBatteryDataLabel->setAlignment(Qt::AlignRight);
+    cartBatteryDataLabel->setContentsMargins(4, 4, 4, 4);
+    cartBatteryDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(cartBatteryDataLabel, 2630, 2940, 34, 1047);
+
+    cartCurrentDataLabel = new QLabel;
+    cartCurrentDataLabel->setText((QString) "0      V");
+    cartCurrentDataLabel->setAlignment(Qt::AlignRight);
+    cartCurrentDataLabel->setContentsMargins(4, 4, 4, 4);
+    cartCurrentDataLabel->setStyleSheet(dataStyle);
+    outerLayout->addWidget(cartCurrentDataLabel, 2670, 2940, 34, 1047);
 
-    // QPainter* painter = QPainter(outerLayout);
-    // painter->drawLine(50, 50, 200, 200);
+    setLayout(outerLayout);
 }
 
 void RefuelingVisualizer::addCustomActionsToMenu()
@@ -147,14 +334,16 @@ void RefuelingVisualizer::setFilter(const Filter& newFilter)
 
 void RefuelingVisualizer::onMsgReceived(const Message& msg)
 {
-    uint64_t tarsState = msg.getField("tars_state").getUnsignedInteger();
-    uint64_t release = msg.getField("release_valve_state").getUnsignedInteger();
-    uint64_t filling = msg.getField("filling_valve_state").getUnsignedInteger();
-    uint64_t venting = msg.getField("venting_valve_state").getUnsignedInteger();
-
-    QString baseStyle =
-        "border-width: 1px; border-style: solid; border-radius: 1px; "
-        "border-color: white; background-color: rgb(82, 142, 56)";
+    // uint64_t tarsState = msg.getField("tars_state").getUnsignedInteger();
+    // uint64_t release =
+    // msg.getField("release_valve_state").getUnsignedInteger(); uint64_t
+    // filling = msg.getField("filling_valve_state").getUnsignedInteger();
+    // uint64_t venting =
+    // msg.getField("venting_valve_state").getUnsignedInteger();
+
+    // QString baseStyle =
+    //     "border-width: 1px; border-style: solid; border-radius: 1px; "
+    //     "border-color: white; background-color: rgb(82, 142, 56)";
 
     // auto ciao = outerLayout->itemAt(8)->widget();
     // topTankPressureLabelIm->setStyleSheet(
diff --git a/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.h b/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.h
index c82e14461e4997c63775985849f543c25d05781c..3c991d3c5397d8d4274e96108fcd890c49a5fd3e 100644
--- a/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.h
+++ b/src/shared/Modules/RefuelingVisualizer/RefuelingVisualizer.h
@@ -48,8 +48,37 @@ private:
     void onMsgReceived(const Message& msg);
 
     QGridLayout* outerLayout;
-    // QLabel* topTankPressureLabelIm;
-    // QLabel* loadcellTank;
+
+    // TANK VISUALIZER LABELS
+    QLabel* tankHeaderLabel;
+    QLabel* topTankPressureLabel;
+    QLabel* bottomTankPressureLabel;
+    QLabel* loadcellTankLabel;
+    QLabel* floatingLevelLabel;
+    QLabel* tankTemperatureLabel;
+    QLabel* topTankPressureDataLabel;
+    QLabel* bottomTankPressureDataLabel;
+    QLabel* loadcellTankDataLabel;
+    QLabel* floatingLevelDataLabel;
+    QLabel* tankTemperatureDataLabel;
+
+    // VESSEL VISUALIZER LABELS
+    QLabel* vesselHeaderLabel;
+    QLabel* loadcellVesselLabel;
+    QLabel* vesselPressureLabel;
+    QLabel* loadcellVesselDataLabel;
+    QLabel* vesselPressureDataLabel;
+
+    // CART VISUALIZER LABELS
+    QLabel* cartHeaderLabel;
+    QLabel* cartTimestampLabel;
+    QLabel* cartFillingPressureLabel;
+    QLabel* cartBatteryLabel;
+    QLabel* cartCurrentLabel;
+    QLabel* cartTimestampDataLabel;
+    QLabel* cartFillingPressureDataLabel;
+    QLabel* cartBatteryDataLabel;
+    QLabel* cartCurrentDataLabel;
 
     Filter filter;
     RefuelingVisualizerCommandList::Valve currentState;