diff --git a/acceptance/03-get-server-details.go b/acceptance/03-get-server-details.go
index 88d7978..9d534ef 100644
--- a/acceptance/03-get-server-details.go
+++ b/acceptance/03-get-server-details.go
@@ -7,7 +7,7 @@
 )
 
 var id = flag.String("i", "", "Server ID to get info on.  Defaults to first server in your account if unspecified.")
-var rgn = flag.String("r", "DFW", "Datacenter region")
+var rgn = flag.String("r", "", "Datacenter region.  Leave blank for default region.")
 var quiet = flag.Bool("quiet", false, "Run quietly, for acceptance testing.  $? non-zero if issue.")
 
 func main() {
@@ -107,4 +107,4 @@
 	}
 	err = waitForServerState(servers, serverId, "ACTIVE")
 	return true, serverId, err
-}
\ No newline at end of file
+}
diff --git a/acceptance/04-create-server.go b/acceptance/04-create-server.go
index 05d8896..ff2174e 100644
--- a/acceptance/04-create-server.go
+++ b/acceptance/04-create-server.go
@@ -11,7 +11,7 @@
 var quiet = flag.Bool("quiet", false, "Quiet mode for acceptance tests.  $? non-zero if error.")
 
 func configure() {
-	region = flag.String("r", "DFW", "Rackspace region in which to create the server")
+	region = flag.String("r", "", "Region in which to create the server.  Leave blank for provider-default region.")
 	serverName = flag.String("n", randomString("ACPTTEST--", 16), "Server name (what you see in the control panel)")
 	imageRef = flag.String("i", "", "ID of image to deploy onto the server")
 	flavorRef = flag.String("f", "", "Flavor of server to deploy image upon")
diff --git a/acceptance/05-list-images.go b/acceptance/05-list-images.go
index f57ac0b..8120591 100644
--- a/acceptance/05-list-images.go
+++ b/acceptance/05-list-images.go
@@ -7,7 +7,7 @@
 )
 
 var quiet = flag.Bool("quiet", false, "Quiet mode for acceptance testing.  $? non-zero on error though.")
-var rgn = flag.String("r", "DFW", "Datacenter region to interrogate.")
+var rgn = flag.String("r", "", "Datacenter region to interrogate.  Leave blank for provider-default region.")
 
 func main() {
 	flag.Parse()
diff --git a/acceptance/06-list-flavors.go b/acceptance/06-list-flavors.go
index 28ac215..5495a83 100644
--- a/acceptance/06-list-flavors.go
+++ b/acceptance/06-list-flavors.go
@@ -7,7 +7,7 @@
 )
 
 var quiet = flag.Bool("quiet", false, "Quiet mode for acceptance testing.  $? non-zero on error though.")
-var rgn = flag.String("r", "DFW", "Datacenter region to interrogate.")
+var rgn = flag.String("r", "", "Datacenter region to interrogate.  Leave blank for provider-default region.")
 
 func main() {
 	flag.Parse()
diff --git a/acceptance/08-reauthentication.go b/acceptance/08-reauthentication.go
index b15e5e0..f383a30 100644
--- a/acceptance/08-reauthentication.go
+++ b/acceptance/08-reauthentication.go
@@ -7,7 +7,7 @@
 )
 
 var quiet = flag.Bool("quiet", false, "Quiet mode for acceptance testing.  $? non-zero on error though.")
-var rgn = flag.String("r", "DFW", "Datacenter region to interrogate.")
+var rgn = flag.String("r", "", "Datacenter region to interrogate.  Leave blank for provider-default region.")
 
 func main() {
 	flag.Parse()
diff --git a/acceptance/15-list-keypairs.go b/acceptance/15-list-keypairs.go
index 9b137f4..da526e2 100644
--- a/acceptance/15-list-keypairs.go
+++ b/acceptance/15-list-keypairs.go
@@ -7,7 +7,7 @@
 )
 
 var quiet = flag.Bool("quiet", false, "Quiet mode for acceptance testing.  $? non-zero on error though.")
-var rgn = flag.String("r", "DFW", "Datacenter region to interrogate.")
+var rgn = flag.String("r", "", "Datacenter region to interrogate.  Leave blank for provider-default region.")
 
 func main() {
 	flag.Parse()
diff --git a/acceptance/16-create-delete-keypair.go b/acceptance/16-create-delete-keypair.go
index efba4cf..e292473 100644
--- a/acceptance/16-create-delete-keypair.go
+++ b/acceptance/16-create-delete-keypair.go
@@ -7,7 +7,7 @@
 )
 
 var quiet = flag.Bool("quiet", false, "Quiet mode for acceptance testing.  $? non-zero on error though.")
-var rgn = flag.String("r", "DFW", "Datacenter region to interrogate.")
+var rgn = flag.String("r", "", "Datacenter region to interrogate.  Leave blank for provider-default region.")
 
 func main() {
 	flag.Parse()
diff --git a/acceptance/17-create-delete-image.go b/acceptance/17-create-delete-image.go
index 0ad9b14..1fae5ab 100644
--- a/acceptance/17-create-delete-image.go
+++ b/acceptance/17-create-delete-image.go
@@ -7,7 +7,7 @@
 )
 
 var quiet = flag.Bool("quiet", false, "Quiet mode for acceptance testing.  $? non-zero on error though.")
-var rgn = flag.String("r", "DFW", "Datacenter region to interrogate.")
+var rgn = flag.String("r", "", "Datacenter region to interrogate.  Leave blank for provider-default region.")
 
 func main() {
 	flag.Parse()
diff --git a/acceptance/99-delete-server.go b/acceptance/99-delete-server.go
index c39e44c..f3639b9 100644
--- a/acceptance/99-delete-server.go
+++ b/acceptance/99-delete-server.go
@@ -7,7 +7,7 @@
 )
 
 var quiet = flag.Bool("quiet", false, "Quiet operation for acceptance tests.  $? non-zero if problem.")
-var region = flag.String("r", "DFW", "Datacenter region")
+var region = flag.String("r", "", "Datacenter region.  Leave blank for provider-default region.")
 
 func main() {
 	flag.Parse()
diff --git a/acceptance/libargs.go b/acceptance/libargs.go
index b1e79ff..23c55f1 100644
--- a/acceptance/libargs.go
+++ b/acceptance/libargs.go
@@ -159,7 +159,6 @@
 func withServerApi(acc gophercloud.AccessProvider, f func(gophercloud.CloudServersProvider)) {
 	api, err := gophercloud.ServersApi(acc, gophercloud.ApiCriteria{
 		Name:      "cloudServersOpenStack",
-		Region:    "DFW",
 		VersionId: "2",
 		UrlChoice: gophercloud.PublicURL,
 	})
