diff --git a/openstack/compute/v2/extensions/diskconfig/doc.go b/openstack/compute/v2/extensions/diskconfig/doc.go
index a971b35..80785fa 100644
--- a/openstack/compute/v2/extensions/diskconfig/doc.go
+++ b/openstack/compute/v2/extensions/diskconfig/doc.go
@@ -1,3 +1,3 @@
-// Package diskconfig provides information and interaction with the the Disk
+// Package diskconfig provides information and interaction with the Disk
 // Config extension that works with the OpenStack Compute service.
 package diskconfig
diff --git a/openstack/compute/v2/flavors/results.go b/openstack/compute/v2/flavors/results.go
index 389bd7f..8dddd70 100644
--- a/openstack/compute/v2/flavors/results.go
+++ b/openstack/compute/v2/flavors/results.go
@@ -12,7 +12,7 @@
 // ErrCannotInterpret is returned by an Extract call if the response body doesn't have the expected structure.
 var ErrCannotInterpet = errors.New("Unable to interpret a response body.")
 
-// GetResult temporarily holds the reponse from a Get call.
+// GetResult temporarily holds the response from a Get call.
 type GetResult struct {
 	gophercloud.Result
 }
diff --git a/openstack/compute/v2/images/requests.go b/openstack/compute/v2/images/requests.go
index 1422cd0..bc61ddb 100644
--- a/openstack/compute/v2/images/requests.go
+++ b/openstack/compute/v2/images/requests.go
@@ -59,7 +59,7 @@
 }
 
 // Get acquires additional detail about a specific image by ID.
-// Use ExtractImage() to intepret the result as an openstack Image.
+// Use ExtractImage() to interpret the result as an openstack Image.
 func Get(client *gophercloud.ServiceClient, id string) GetResult {
 	var result GetResult
 	_, result.Err = perigee.Request("GET", getURL(client, id), perigee.Options{
diff --git a/openstack/compute/v2/servers/requests.go b/openstack/compute/v2/servers/requests.go
index 3465cbc..95a4188 100644
--- a/openstack/compute/v2/servers/requests.go
+++ b/openstack/compute/v2/servers/requests.go
@@ -225,7 +225,7 @@
 	return result
 }
 
-// UpdateOptsBuilder allows extentions to add additional attributes to the Update request.
+// UpdateOptsBuilder allows extensions to add additional attributes to the Update request.
 type UpdateOptsBuilder interface {
 	ToServerUpdateMap() map[string]interface{}
 }
diff --git a/openstack/identity/v3/endpoints/requests.go b/openstack/identity/v3/endpoints/requests.go
index 66bdb0e..f5f8b0c 100644
--- a/openstack/identity/v3/endpoints/requests.go
+++ b/openstack/identity/v3/endpoints/requests.go
@@ -68,7 +68,7 @@
 	return result
 }
 
-// ListOpts allows finer control over the the endpoints returned by a List call.
+// ListOpts allows finer control over the endpoints returned by a List call.
 // All fields are optional.
 type ListOpts struct {
 	Availability gophercloud.Availability
diff --git a/openstack/networking/v2/extensions/layer3/floatingips/results.go b/openstack/networking/v2/extensions/layer3/floatingips/results.go
index 84719fd..3eac001 100644
--- a/openstack/networking/v2/extensions/layer3/floatingips/results.go
+++ b/openstack/networking/v2/extensions/layer3/floatingips/results.go
@@ -11,7 +11,7 @@
 // FloatingIP represents a floating IP resource. A floating IP is an external
 // IP address that is mapped to an internal port and, optionally, a specific
 // IP address on a private network. In other words, it enables access to an
-// instance on a private network from an external network. For thsi reason,
+// instance on a private network from an external network. For this reason,
 // floating IPs can only be defined on networks where the `router:external'
 // attribute (provided by the external network extension) is set to True.
 type FloatingIP struct {
diff --git a/openstack/networking/v2/ports/requests.go b/openstack/networking/v2/ports/requests.go
index 8210801..3399907 100644
--- a/openstack/networking/v2/ports/requests.go
+++ b/openstack/networking/v2/ports/requests.go
@@ -61,7 +61,7 @@
 // the returned collection for greater efficiency.
 //
 // Default policy settings return only those ports that are owned by the tenant
-// who submits the request, unless the request is submitted by an user with
+// who submits the request, unless the request is submitted by a user with
 // administrative rights.
 func List(c *gophercloud.ServiceClient, opts ListOptsBuilder) pagination.Pager {
 	url := listURL(c)
diff --git a/openstack/networking/v2/subnets/requests.go b/openstack/networking/v2/subnets/requests.go
index 2e6d670..cd7c663 100644
--- a/openstack/networking/v2/subnets/requests.go
+++ b/openstack/networking/v2/subnets/requests.go
@@ -60,7 +60,7 @@
 // the returned collection for greater efficiency.
 //
 // Default policy settings return only those subnets that are owned by the tenant
-// who submits the request, unless the request is submitted by an user with
+// who submits the request, unless the request is submitted by a user with
 // administrative rights.
 func List(c *gophercloud.ServiceClient, opts ListOptsBuilder) pagination.Pager {
 	url := listURL(c)
diff --git a/openstack/utils/choose_version.go b/openstack/utils/choose_version.go
index 753f8f8..a0d5b26 100644
--- a/openstack/utils/choose_version.go
+++ b/openstack/utils/choose_version.go
@@ -20,7 +20,7 @@
 	"stable":    true,
 }
 
-// ChooseVersion queries the base endpoint of a API to choose the most recent non-experimental alternative from a service's
+// ChooseVersion queries the base endpoint of an API to choose the most recent non-experimental alternative from a service's
 // published versions.
 // It returns the highest-Priority Version among the alternatives that are provided, as well as its corresponding endpoint.
 func ChooseVersion(identityBase string, identityEndpoint string, recognized []*Version) (*Version, string, error) {
