diff --git a/core/Tracker.php b/core/Tracker.php
index 964e6654e08e23f127ea834d349baaca9e5b3fb0..5d6c077f3713c9f03e375403900005a2d813d076 100644
--- a/core/Tracker.php
+++ b/core/Tracker.php
@@ -128,27 +128,23 @@ class Piwik_Tracker
 
 	protected function initRequests($args)
 	{
-		$post = serialize($_POST);
-		$usingBulkTracking = strpos($post, '"requests"') || strpos($post, "'requests'"); 
-		
-		if($usingBulkTracking)
-		{
-			$this->initBulkTrackingRequests();
-		}
-		else
+		$usingBulkTracking = false;
+		$rawData = file_get_contents("php://input");
+		if (!empty($rawData))
 		{
-			$this->requests = $args ? $args : (!empty($_GET) || !empty($_POST) ? array($_GET + $_POST) : array());
+			$usingBulkTracking = strpos($rawData, '"requests"') || strpos($rawData, "'requests'"); 
+			if($usingBulkTracking)
+			{
+				return $this->initBulkTrackingRequests($rawData);
+			}
 		}
+		
+		// Not using bulk tracking
+		$this->requests = $args ? $args : (!empty($_GET) || !empty($_POST) ? array($_GET + $_POST) : array());
 	}
 
-	private function initBulkTrackingRequests()
+	private function initBulkTrackingRequests($rawData)
 	{
-		$rawData = file_get_contents("php://input");
-		if (empty($rawData))
-		{
-			return;
-		}
-
 		// POST data can be array of string URLs or array of arrays w/ visit info
 		$jsonData = Piwik_Common::json_decode($rawData, $assoc = true);