diff --git a/core/Tracker/Action.php b/core/Tracker/Action.php
index 454e29c2090ce91fad55ab17a37244a6f4cc1b06..a4ef478f62d4632c0bdaf849c38a7ba49ce2d612 100644
--- a/core/Tracker/Action.php
+++ b/core/Tracker/Action.php
@@ -842,34 +842,37 @@ class Piwik_Tracker_Action implements Piwik_Tracker_Action_Interface
 		$doTrackUrlForSiteSearch = !empty(Piwik_Config::getInstance()->Tracker['action_sitesearch_record_url']);
 
 		$originalUrl = self::cleanupUrl($originalUrl);
-		$parsedUrl = @parse_url($originalUrl);
 
-		// Detect Site Search from URL query parameters
-		if(!empty($parsedUrl['query']) || !empty($parsedUrl['fragment']))
+
+		// Detect Site search from Tracking API parameters rather than URL
+		$searchKwd = Piwik_Common::getRequestVar( self::PARAMETER_NAME_SEARCH_KEYWORD, '', 'string', $this->request);
+		if(!empty($searchKwd))
 		{
-			// array($url, $actionName, $categoryName, $count);
-			$searchInfo = $this->detectSiteSearchFromUrl($website, $parsedUrl);
-			if(!empty($searchInfo)) {
-				list ($url, $actionName, $categoryName, $count) = $searchInfo;
+			$actionName = $searchKwd;
+			if($doTrackUrlForSiteSearch) {
+				$url = $originalUrl;
+			}
+			$isCategoryName = Piwik_Common::getRequestVar( self::PARAMETER_NAME_SEARCH_CATEGORY, false, 'string', $this->request);
+			if(!empty($isCategoryName)) {
+				$categoryName = $isCategoryName;
+			}
+			$isCount = Piwik_Common::getRequestVar( self::PARAMETER_NAME_SEARCH_COUNT, -1, 'int', $this->request);
+			if($this->isValidSearchCount($isCount)) {
+				$count = $isCount;
 			}
 		}
 
-		// Detect Site search from Tracking API parameters rather than URL
-		if(empty($actionName)) {
-			$searchKwd = Piwik_Common::getRequestVar( self::PARAMETER_NAME_SEARCH_KEYWORD, '', 'string', $this->request);
-			if(!empty($searchKwd))
+		if(empty($actionName))
+		{
+			$parsedUrl = @parse_url($originalUrl);
+
+			// Detect Site Search from URL query parameters
+			if(!empty($parsedUrl['query']) || !empty($parsedUrl['fragment']))
 			{
-				$actionName = $searchKwd;
-				if($doTrackUrlForSiteSearch) {
-					$url = $originalUrl;
-				}
-				$isCategoryName = Piwik_Common::getRequestVar( self::PARAMETER_NAME_SEARCH_CATEGORY, false, 'string', $this->request);
-				if(!empty($isCategoryName)) {
-					$categoryName = $isCategoryName;
-				}
-				$isCount = Piwik_Common::getRequestVar( self::PARAMETER_NAME_SEARCH_COUNT, -1, 'int', $this->request);
-				if($this->isValidSearchCount($isCount)) {
-					$count = $isCount;
+				// array($url, $actionName, $categoryName, $count);
+				$searchInfo = $this->detectSiteSearchFromUrl($website, $parsedUrl);
+				if(!empty($searchInfo)) {
+					list ($url, $actionName, $categoryName, $count) = $searchInfo;
 				}
 			}
 		}
@@ -972,6 +975,9 @@ class Piwik_Tracker_Action implements Piwik_Tracker_Action_Interface
 		}
 		$url = Piwik_Common::getParseUrlReverse($parsedUrl);
 		$actionName = trim(urldecode($actionName));
+		if(empty($actionName)) {
+			return false;
+		}
 		$categoryName = trim(urldecode($categoryName));
 		return array($url, $actionName, $categoryName, $count);
 	}
diff --git a/tests/PHPUnit/Integration/SiteSearchTest.php b/tests/PHPUnit/Integration/SiteSearchTest.php
index 88dc822f0829d1139481f66ce3884fb4911177af..12c1814063d3569047bfe62bad8b96fa6ebbb153 100755
--- a/tests/PHPUnit/Integration/SiteSearchTest.php
+++ b/tests/PHPUnit/Integration/SiteSearchTest.php
@@ -251,7 +251,7 @@ class Test_Piwik_Integration_SiteSearch extends IntegrationTestCase
 		self::checkResponse($visitor->doTrackPageView('Site Search with 1 result'));
 
 		$visitor->setForceVisitDateTime(Piwik_Date::factory(self::$dateTime)->addHour(0.5)->getDatetime());
-		self::checkResponse($visitor->doTrackSiteSearch("No Result Keyword!", "Bad No Result Category :(", $count = 0));
+		self::checkResponse($visitor->doTrackSiteSearch("No Result Keyword!", "Bad No Result Category bis :(", $count = 0));
 		return array($defaultInit, $visitor);
 	}
 }
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_day.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_day.xml
index b8c3766f2e0590094286b0ce519be51e63da7042..807b530ba41a8652251c1673c2ede377957980e1 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_day.xml
@@ -75,6 +75,17 @@
 	</result>
 	<result idSite="2">
 		<result date="2010-01-03">
+			<row>
+				<label>No Result Keyword!</label>
+				<nb_visits>1</nb_visits>
+				<nb_hits>1</nb_hits>
+				<sum_time_spent>0</sum_time_spent>
+				<exit_nb_visits>1</exit_nb_visits>
+				<nb_pages_per_search>1</nb_pages_per_search>
+				<avg_time_on_page>0</avg_time_on_page>
+				<bounce_rate>0%</bounce_rate>
+				<exit_rate>100%</exit_rate>
+			</row>
 			<row>
 				<label>SHOULD be a Search with no result!</label>
 				<nb_visits>1</nb_visits>
@@ -88,13 +99,12 @@
 			<row>
 				<label>You can use Piwik in: አማርኛ, العربية, Беларуская, Български, Català, Česky, Dansk, Deutsch, Ελληνικά, English, Español, Eesti keel, Euskara, فارسی, Suomi, Français, Galego, עברית, Magyar, Bahasa Indonesia, Íslenska, Italiano, 日本語, ქართული, 한국어, Lietuvių, Latviešu, Norsk (bokmål), Nederlands, Norsk (nynorsk), Polski, Português brasileiro, Português, Română, Русский, Slovensky%</label>
 				<nb_visits>1</nb_visits>
-				<nb_hits>2</nb_hits>
+				<nb_hits>1</nb_hits>
 				<sum_time_spent>180</sum_time_spent>
-				<exit_nb_visits>1</exit_nb_visits>
-				<nb_pages_per_search>2</nb_pages_per_search>
+				<nb_pages_per_search>1</nb_pages_per_search>
 				<avg_time_on_page>180</avg_time_on_page>
 				<bounce_rate>0%</bounce_rate>
-				<exit_rate>100%</exit_rate>
+				<exit_rate>0%</exit_rate>
 			</row>
 		</result>
 		<result date="2010-01-04" />
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_month.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_month.xml
index a9c76805e561c1cd0890cc5d602d30c4e0ee8358..3d60272474a3b9bc4426844ba2a5ca6e3701db76 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchKeywords_month.xml
@@ -64,6 +64,17 @@
 	</result>
 	<result idSite="2">
 		<result date="2010-01">
+			<row>
+				<label>No Result Keyword!</label>
+				<nb_visits>1</nb_visits>
+				<nb_hits>1</nb_hits>
+				<sum_time_spent>0</sum_time_spent>
+				<exit_nb_visits>1</exit_nb_visits>
+				<nb_pages_per_search>1</nb_pages_per_search>
+				<avg_time_on_page>0</avg_time_on_page>
+				<bounce_rate>0%</bounce_rate>
+				<exit_rate>100%</exit_rate>
+			</row>
 			<row>
 				<label>SHOULD be a Search with no result!</label>
 				<nb_visits>1</nb_visits>
@@ -77,13 +88,12 @@
 			<row>
 				<label>You can use Piwik in: አማርኛ, العربية, Беларуская, Български, Català, Česky, Dansk, Deutsch, Ελληνικά, English, Español, Eesti keel, Euskara, فارسی, Suomi, Français, Galego, עברית, Magyar, Bahasa Indonesia, Íslenska, Italiano, 日本語, ქართული, 한국어, Lietuvių, Latviešu, Norsk (bokmål), Nederlands, Norsk (nynorsk), Polski, Português brasileiro, Português, Română, Русский, Slovensky%</label>
 				<nb_visits>1</nb_visits>
-				<nb_hits>2</nb_hits>
+				<nb_hits>1</nb_hits>
 				<sum_time_spent>180</sum_time_spent>
-				<exit_nb_visits>1</exit_nb_visits>
-				<nb_pages_per_search>2</nb_pages_per_search>
+				<nb_pages_per_search>1</nb_pages_per_search>
 				<avg_time_on_page>180</avg_time_on_page>
 				<bounce_rate>0%</bounce_rate>
-				<exit_rate>100%</exit_rate>
+				<exit_rate>0%</exit_rate>
 			</row>
 		</result>
 		<result date="2010-02" />
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_day.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_day.xml
index 642212d4ce8fa97878b9fc03eaac8e7603fcc1d7..b30ddb01d7ba38af9e645b91649098314ffba106 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_day.xml
@@ -33,6 +33,17 @@
 	</result>
 	<result idSite="2">
 		<result date="2010-01-03">
+			<row>
+				<label>No Result Keyword!</label>
+				<nb_visits>1</nb_visits>
+				<nb_hits>1</nb_hits>
+				<sum_time_spent>0</sum_time_spent>
+				<exit_nb_visits>1</exit_nb_visits>
+				<nb_pages_per_search>1</nb_pages_per_search>
+				<avg_time_on_page>0</avg_time_on_page>
+				<bounce_rate>0%</bounce_rate>
+				<exit_rate>100%</exit_rate>
+			</row>
 			<row>
 				<label>SHOULD be a Search with no result!</label>
 				<nb_visits>1</nb_visits>
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_month.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_month.xml
index e8b15cf40d47074c62a0538977693d8963e06254..4f8b06fb5b079aecbeb57cd51012d753c718de40 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.getSiteSearchNoResultKeywords_month.xml
@@ -22,6 +22,17 @@
 	</result>
 	<result idSite="2">
 		<result date="2010-01">
+			<row>
+				<label>No Result Keyword!</label>
+				<nb_visits>1</nb_visits>
+				<nb_hits>1</nb_hits>
+				<sum_time_spent>0</sum_time_spent>
+				<exit_nb_visits>1</exit_nb_visits>
+				<nb_pages_per_search>1</nb_pages_per_search>
+				<avg_time_on_page>0</avg_time_on_page>
+				<bounce_rate>0%</bounce_rate>
+				<exit_rate>100%</exit_rate>
+			</row>
 			<row>
 				<label>SHOULD be a Search with no result!</label>
 				<nb_visits>1</nb_visits>
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_day.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_day.xml
index 60a3e6ec0a79f16b7a75493175c4c5228a5069a1..f82b97b135c885305a3dbb7c7450ce5162e1d841 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_day.xml
@@ -19,9 +19,9 @@
 	</result>
 	<result idSite="2">
 		<result date="2010-01-03">
-			<nb_keywords>2</nb_keywords>
+			<nb_keywords>3</nb_keywords>
 			<nb_pageviews>2</nb_pageviews>
-			<nb_searches>2</nb_searches>
+			<nb_searches>3</nb_searches>
 			<nb_uniq_pageviews>2</nb_uniq_pageviews>
 		</result>
 		<result date="2010-01-04" />
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_month.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_month.xml
index dff9ffe1ed912cc777263f6676c897058341a26b..bd1427d6766ec2b93b56a5342c7abea10b137ed9 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__Actions.get_month.xml
@@ -16,9 +16,9 @@
 	</result>
 	<result idSite="2">
 		<result date="2010-01">
-			<nb_keywords>2</nb_keywords>
+			<nb_keywords>3</nb_keywords>
 			<nb_pageviews>2</nb_pageviews>
-			<nb_searches>2</nb_searches>
+			<nb_searches>3</nb_searches>
 			<nb_uniq_pageviews>2</nb_uniq_pageviews>
 		</result>
 		<result date="2010-02" />
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_day.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_day.xml
index 55484c12426a5471252be609164da74797d0a1be..f3b77be3d03571487db1a28a19d45988977a2e3e 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_day.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_day.xml
@@ -87,12 +87,24 @@
 		<result date="2010-01-03">
 			<row>
 				<label>_pk_scount</label>
-				<nb_actions>1</nb_actions>
+				<nb_actions>2</nb_actions>
 				<subtable>
 					<row>
 						<label>0</label>
 						<nb_uniq_visitors>1</nb_uniq_visitors>
 						<nb_visits>1</nb_visits>
+						<nb_actions>2</nb_actions>
+					</row>
+				</subtable>
+			</row>
+			<row>
+				<label>_pk_scat</label>
+				<nb_actions>1</nb_actions>
+				<subtable>
+					<row>
+						<label>Bad No Result Category bis :(</label>
+						<nb_uniq_visitors>1</nb_uniq_visitors>
+						<nb_visits>1</nb_visits>
 						<nb_actions>1</nb_actions>
 					</row>
 				</subtable>
diff --git a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_month.xml b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_month.xml
index 41a9e85fc302e17c6fe86578e242c52554272432..4ff57b66ad13099ce72260408a024c45f769d792 100644
--- a/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_month.xml
+++ b/tests/PHPUnit/Integration/expected/test_SiteSearch_AllSites__CustomVariables.getCustomVariables_month.xml
@@ -62,11 +62,23 @@
 		<result date="2010-01">
 			<row>
 				<label>_pk_scount</label>
-				<nb_actions>1</nb_actions>
+				<nb_actions>2</nb_actions>
 				<subtable>
 					<row>
 						<label>0</label>
 						<nb_visits>1</nb_visits>
+						<nb_actions>2</nb_actions>
+						<sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
+					</row>
+				</subtable>
+			</row>
+			<row>
+				<label>_pk_scat</label>
+				<nb_actions>1</nb_actions>
+				<subtable>
+					<row>
+						<label>Bad No Result Category bis :(</label>
+						<nb_visits>1</nb_visits>
 						<nb_actions>1</nb_actions>
 						<sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors>
 					</row>