diff --git a/R/readWQPdata.R b/R/readWQPdata.R
index 66c56e0ce2515ee52fff56e86d263a8910b108c4..a0573d53951fc9ae09e71483df5b7abffad22881 100644
--- a/R/readWQPdata.R
+++ b/R/readWQPdata.R
@@ -116,38 +116,42 @@ readWQPdata <- function(...){
 
   retval <- importWQP(urlCall,FALSE)
   
-  siteInfo <- whatWQPsites(...)
-  
-  siteInfoCommon <- data.frame(station_nm=siteInfo$MonitoringLocationName,
-                               agency_cd=siteInfo$OrganizationIdentifier,
-                               site_no=siteInfo$MonitoringLocationIdentifier,
-                               dec_lat_va=siteInfo$LatitudeMeasure,
-                               dec_lon_va=siteInfo$LongitudeMeasure,
-                               hucCd=siteInfo$HUCEightDigitCode,
+  if(!is.na(retval)){
+    siteInfo <- whatWQPsites(...)
+    
+    siteInfoCommon <- data.frame(station_nm=siteInfo$MonitoringLocationName,
+                                 agency_cd=siteInfo$OrganizationIdentifier,
+                                 site_no=siteInfo$MonitoringLocationIdentifier,
+                                 dec_lat_va=siteInfo$LatitudeMeasure,
+                                 dec_lon_va=siteInfo$LongitudeMeasure,
+                                 hucCd=siteInfo$HUCEightDigitCode,
+                                 stringsAsFactors=FALSE)
+    
+    siteInfo <- cbind(siteInfoCommon, siteInfo)
+    
+    retvalVariableInfo <- retval[,c("CharacteristicName","USGSPCode",
+                                    "ResultMeasure.MeasureUnitCode","ResultSampleFractionText")]
+    retvalVariableInfo <- unique(retvalVariableInfo)
+    
+    variableInfo <- data.frame(characteristicName=retval$CharacteristicName,
+                               parameterCd=retval$USGSPCode,
+                               param_units=retval$ResultMeasure.MeasureUnitCode,
+                               valueType=retval$ResultSampleFractionText,
                                stringsAsFactors=FALSE)
-  
-  siteInfo <- cbind(siteInfoCommon, siteInfo)
-  
-  
-  variableInfo <- data.frame(characteristicName=retval$CharacteristicName,
-                             parameterCd=retval$USGSPCode,
-                             param_units=retval$ResultMeasure.MeasureUnitCode,
-                             valueType=retval$ResultSampleFractionText,
-                             stringsAsFactors=FALSE)
-  variableInfo <- unique(variableInfo)
-  
-  if(any(!is.na(variableInfo$parameterCd))){
-    pCodeToName <- pCodeToName
-    varExtras <- pCodeToName[pCodeToName$parm_cd %in% unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)]),]
-    names(varExtras)[names(varExtras) == "parm_cd"] <- "parameterCd"
-    variableInfo <- merge(variableInfo, varExtras, by="parameterCd")
+    
+    if(any(!is.na(variableInfo$parameterCd))){
+      pCodeToName <- pCodeToName
+      varExtras <- pCodeToName[pCodeToName$parm_cd %in% unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)]),]
+      names(varExtras)[names(varExtras) == "parm_cd"] <- "parameterCd"
+      variableInfo <- merge(variableInfo, varExtras, by="parameterCd")
+      variableInfo <- unique(variableInfo)
+    }
+    
+    attr(retval, "siteInfo") <- siteInfo
+    attr(retval, "variableInfo") <- variableInfo
+    attr(retval, "url") <- urlCall
+    attr(retval, "queryTime") <- Sys.time()
+    
+    return(retval)
   }
-  
-  attr(retval, "siteInfo") <- siteInfo
-  attr(retval, "variableInfo") <- variableInfo
-  attr(retval, "url") <- urlCall
-  attr(retval, "queryTime") <- Sys.time()
-  
-  return(retval)
-  
 }
\ No newline at end of file