diff --git a/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/FeedServlet.java b/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/FeedServlet.java
index 6936161..65b057f 100644
--- a/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/FeedServlet.java
+++ b/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/FeedServlet.java
@@ -92,7 +92,11 @@
                 StringBuilder ldStr = new StringBuilder();
                 ldStr.append("<br />");
                 ldStr.append("<br />");
-                ldStr.append("Active Feeds");
+                if (lfa == null || lfa.isEmpty()) {
+                    ldStr.append("Currently there are no active feeds in the Asterix");
+                } else {
+                    ldStr.append("Active Feeds");
+                }
                 FeedConnectionId feedId = null;
                 for (FeedActivity feedActivity : lfa) {
                     feedId = new FeedConnectionId(feedActivity.getDataverseName(), feedActivity.getFeedName(),
diff --git a/asterix-app/src/main/resources/feed/dashboard.html b/asterix-app/src/main/resources/feed/dashboard.html
index 5538705..aa25bd8 100644
--- a/asterix-app/src/main/resources/feed/dashboard.html
+++ b/asterix-app/src/main/resources/feed/dashboard.html
@@ -40,7 +40,7 @@
             var tputArray = report.split("|");
             var covered = 0;
             var totalTput = 0;
-            for( var i = 0; i < tputArray.length; i ++){
+            for( var i = 0; i < tputArray.length-1; i ++){
                ingestionTimeSeries[i].append(data["time"], tputArray[i]);
                covered++;
                totalTput += parseInt(tputArray[i]);
