[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-08-18。"],[],[],null,["# Requester Pays\n\n[Setup](/storage/docs/using-requester-pays)\n\nThis page provides an overview of the Requester Pays feature for Cloud Storage.\n\nIntroduction\n------------\n\nWhenever a user accesses a Cloud Storage resource such as a bucket or\nobject, there are [charges](/storage/pricing) associated with making and executing the request.\nSuch charges include:\n\n- [**Data processing charges**](/storage/pricing#process-pricing) for operations, replication, and data\n retrieval.\n\n- [**Network usage charges**](/storage/pricing#network-pricing) for reading the data.\n\nNormally, the project owner of the resource is billed for these charges;\nhowever, if the requester provides a *billing project* with their request, the\nrequester's project is billed instead. With Requester Pays enabled on your\nbucket, you can *require* requesters to include a billing project in their\nrequests, thus billing the requester's project. Enabling Requester Pays is\nuseful, for example, if you have a lot of data you want to make available to\nusers, but you don't want to be charged for their access to that data.\n| **Note:** You currently incur no charges when you use the [Cloud Storage Transfer Service](/storage-transfer) and have a billing project in your request. This is a promotional price.\n\n#### Charges not covered\n\n[**Data storage charges**](/storage/pricing#storage-pricing), including [**early deletion charges**](/storage/pricing#early-delete), are\nalways applied to the project that contains the bucket, even if Requester Pays\nis enabled.\n\n### Restrictions\n\nThe following restrictions apply when using Requester Pays:\n\n- You cannot use a bucket that has Requester Pays enabled for imports and exports from Cloud SQL.\n- You cannot use a bucket that has Requester Pays enabled for [exports from Pub/Sub](/pubsub/docs/cloudstorage).\n\nUse and access requirements\n---------------------------\n\nTo enable Requester Pays on a bucket, [enable the metadata flag](/storage/docs/using-requester-pays#set) on the\nbucket. Once enabled, only the following users can access the bucket\nor its contents:\n\n- Requesters who [include a billing project in their request](/storage/docs/using-requester-pays#using). The project\n used in the request must be in good standing, and the user must\n [have a role](/iam/docs/granting-changing-revoking-access#grant-single-role) in the project that contains the `serviceusage.services.use`\n permission. The **Service Usage Consumer** role contains the required\n permission.\n\n- Requesters who don't include a billing project but have\n `resourcemanager.projects.createBillingAssignment` permission for the project\n that contains the bucket. The **Billing Project Manager** role contains\n the required permission. Access charges associated with these\n requests are billed to the project that contains the bucket.\n\nAll other requests to the bucket fail with a `400 UserProjectMissing` error.\n\nIn addition to these requirements, the requester must have sufficient\n[permission](/storage/docs/access-control) to perform the requested action. For example, a user that\nprovides a valid billing project in their request cannot upload objects to the\nbucket unless they also have explicit permission to do so, such as by having\n`storage.objects.create` permission for that bucket or the project that\ncontains it.\n\nWhen disabling Requester pays, you must include a billing project in your\nrequest, or have the `resourcemanager.projects.createBillingAssignment`\npermission.\n| **Important:** Buckets that have Requester Pays disabled still accept requests that include a billing project, and charges are applied to the billing project supplied in the request. Consider any billing implications prior to including a billing project in all of your requests.\n\nSource-billed operations\n------------------------\n\nOperations that have both a source bucket and a destination\nbucket, such as a copy or rewrite, charge to the project\nthat contains the source bucket. In most cases, such as direct calls using the\nJSON and XML APIs, you only need to include a billing project if the **source**\nbucket has Requester Pays enabled.\n\nIn some cases, such as `gcloud storage cp` with a `--no-clobber` flag, you need\nto include a billing project if either the source bucket or destination bucket\n(or both) have Requester Pays enabled. This is because such operations make\ncalls to both the source and destination buckets in the course of performing\nthe action.\n\nMulti-request operations\n------------------------\n\nFor operations that require multiple requests to complete, the use of billing\nprojects in your requests have the following behaviors:\n\n- For [resumable uploads](/storage/docs/resumable-uploads), only the first request needs to\n [include a billing project](/storage/docs/using-requester-pays#using), and it applies to the entire upload. Billing\n projects specified in subsequent requests are ignored.\n\n- For [rewrites with the JSON API](/storage/docs/json_api/v1/objects/rewrite) and [XML API multipart uploads](/storage/docs/multipart-uploads), each\n request can use a different billing project, and a billing project specified\n in an earlier request does not apply to subsequent requests.\n\nBilling\n-------\n\nCharges associated with including a billing project in your request do not\nappear separately in your billing. For example, say you make several\ndownloads from a Requester Pays bucket, and you use the project `my-project`\nas the project to bill for the request. If `my-project` also contains a bucket\nfrom which you perform downloads, your bill only shows the total charges\nfor your combined downloads. It does not distinguish between the downloads\nfrom your own bucket and those from the Requester Pays bucket.\n\nIf you wish to distinguish between charges from your own Cloud Storage\nresources and charges from including billing projects in your requests, you\nshould [create a project](/resource-manager/docs/creating-managing-projects#creating_a_project) that contains no Cloud Storage resources: this\nproject is thus dedicated to making requests to resources in other projects,\nsuch as Requester Pays buckets.\n\nWhat's next\n-----------\n\n- Learn how to [use Requester Pays](/storage/docs/using-requester-pays).\n- [Make data publicly available](/storage/docs/access-control/making-data-public)."]]