diff --git a/params.go b/params.go
index b7f9508..e484fe1 100644
--- a/params.go
+++ b/params.go
@@ -232,7 +232,7 @@
 		if v.IsNil() {
 			return true
 		}
-		return isZero(v.Elem())
+		return false
 	case reflect.Func, reflect.Map, reflect.Slice:
 		return v.IsNil()
 	case reflect.Array:
@@ -307,7 +307,11 @@
 
 				// if the field is set, add it to the slice of query pieces
 				if !isZero(v) {
+				loop:
 					switch v.Kind() {
+					case reflect.Ptr:
+						v = v.Elem()
+						goto loop
 					case reflect.String:
 						params.Add(tags[0], v.String())
 					case reflect.Int:
diff --git a/testing/params_test.go b/testing/params_test.go
index 90f3fad..937ff8b 100644
--- a/testing/params_test.go
+++ b/testing/params_test.go
@@ -35,6 +35,7 @@
 
 func TestBuildQueryString(t *testing.T) {
 	type testVar string
+	iFalse := false
 	opts := struct {
 		J  int       `q:"j"`
 		R  string    `q:"r,required"`
@@ -42,6 +43,7 @@
 		S  []string  `q:"s"`
 		TS []testVar `q:"ts"`
 		TI []int     `q:"ti"`
+		F  *bool     `q:"f"`
 	}{
 		J:  2,
 		R:  "red",
@@ -49,8 +51,9 @@
 		S:  []string{"one", "two", "three"},
 		TS: []testVar{"a", "b"},
 		TI: []int{1, 2},
+		F:  &iFalse,
 	}
-	expected := &url.URL{RawQuery: "c=true&j=2&r=red&s=one&s=two&s=three&ti=1&ti=2&ts=a&ts=b"}
+	expected := &url.URL{RawQuery: "c=true&f=false&j=2&r=red&s=one&s=two&s=three&ti=1&ti=2&ts=a&ts=b"}
 	actual, err := gophercloud.BuildQueryString(&opts)
 	if err != nil {
 		t.Errorf("Error building query string: %v", err)
@@ -64,6 +67,7 @@
 		S  []string  `q:"s"`
 		TS []testVar `q:"ts"`
 		TI []int     `q:"ti"`
+		F  *bool     `q:"f"`
 	}{
 		J: 2,
 		C: true,
