Reporting Stats for an MCC

1,551 views
Skip to first unread message

Mike C

unread,
Jan 7, 2014, 9:05:39 PM1/7/14
to adwor...@googlegroups.com
Hi Adwords Team,

I've followed the adwords_on_rails demo to create a rails app with a dashboard view that shows an account's stats (clicks, impressions, conversions, etc.), just like an adwords dashboard.

When a user logs in they authenticate through OAuth and land on a selection screen where they select an account ID through a generated list or input one manually (per your setup in adwords_on_rails).  It all works perfectly.

However, is there a way that I can see an overview with stats for all the accounts within an MCC?   Just like when I sign into adwords with the main MCC account credentials, I see a dash with all my clients accounts and their associated stats (all impressions, clicks etc. for client 1, client 2, etc.).

How would I set it up so that I could see that view within the app?  When I OAuth in as the MCC account, I see a list of all the clients and can click on their id set the account id and go into their individual dash.  Even though the MCC's account ID is clickable, if I use it, the dash returns no data.

This is important so that we can have agency views as well as franchises that have multiple accounts that want a main dash to see all their individual account stats.

Any help would be greatly appreciated!

Thanks in advance!

Mike

Ray Tsang (AdWords API Team)

unread,
Jan 13, 2014, 8:31:26 PM1/13/14
to adwor...@googlegroups.com
Mike,

There is a way to retrieve stats for all accounts within an MCC.  You will need to iterate over all of the descendant accounts of the MCC, and for each of those account, get the stats from reporting.

You can continue to use OAuth 2.0 as the MCC account user.  For example:
1. Use the ManageCustomerService to get a list of accounts (and the customer ID) managed by the MCC
2. For each account, query for the stats that you need to aggregate by specifying the Client Customer ID (without the dashes).

Cheers,

--
Ray Tsang (AdWords API Advisor)

Mike C

unread,
Jan 14, 2014, 3:06:33 AM1/14/14
to adwor...@googlegroups.com
Thanks for the response Ray!

I've taken a look at your links - Do I need to actually download reports and parse them for this data or can I get an XML response (or any other format I can parse) to the request?  I have users that will be changing their date range in the app dash and it doesn't seem very efficient for me to have to download a report, save it , open it, and parse it every time.

Please advise.  Your help is most appreciated!

Mike

Ray Tsang (AdWords API Team)

unread,
Jan 14, 2014, 11:03:29 PM1/14/14
to adwor...@googlegroups.com
Mike,

You are welcome!  Depending on your needs, you may be able to download the data periodically so that you can avoid hitting the server every time.  Some metric/report are updated at different time - so you can take advantage of synchronizing the data when it becomes fresh.

Thanks,

--
Ray Tsang (AdWords API Advisor)




Mike C

unread,
Jan 15, 2014, 8:04:27 PM1/15/14
to adwor...@googlegroups.com
Thank you for the help Ray.

I just want to use these stats in a Rails view.  Is there a way to get a response that is just like an XML dump that I can parse?  These clients check their data a few times a day using various different data ranges.  The campaignstats object I am using now is very helpful but it is being sunset and you also mentioned I can't get MCC stats that way.  

Is my only option to actually download a report from the API and parse it every time a user changes the date range to request a new data set?  Is that the only way to get these stats values moving forward?

Thanks,

Mike

Ray Tsang (AdWords API Team)

unread,
Jan 16, 2014, 8:32:25 PM1/16/14
to adwor...@googlegroups.com
Mike,

You can get the response in XML format as well.  Please see our Reporting guide regarding the supported formats.
I recall the client libraries should also have an option for you to retrieve the report and storing it either in memory or in a temporary file.

Please keep in mind, the request / response paradigm is not much different from the SOAP messaging.  In SOAP, the SOAP client parses the XML for you, where as with reporting service - your application will need to parse the response data.

I hope this helps,

--
Ray Tsang (AdWords API Advisor)

Mike C

unread,
Jan 28, 2014, 12:06:36 AM1/28/14
to adwor...@googlegroups.com
Hi Ray,

I'm having trouble figuring out how to implement your response.  I am able to run a report and get the stats when I utilize a customer ID that has one account.  I can get all the stats for that account.

However, I do not understand how I am supposed to get that same report response for multiple accounts.  For example, the report I can get has one row that gives me all my info for that account (Clicks, Impressions, Conversions, etc.).

How do I run that same ACCOUNT_PERFORMANCE_REPORT so that it will return multiple rows with Clicks, Impressions, Stats, etc. for more than one account?

Please advise.  (It would be great if there was an example somewhere I could take a look at)

Thanks!

Mike

On Monday, January 13, 2014 12:31:26 PM UTC-8, Ray Tsang (AdWords API Team) wrote:

Anash P. Oommen (AdWords API Team)

unread,
Jan 28, 2014, 6:01:20 PM1/28/14
to adwor...@googlegroups.com
Hi Mike,

https://github.com/googleads/google-api-ads-ruby/blob/master/adwords_api/examples/v201309/reporting/parallel_report_download.rb is a good code example to get started on how to download reports for multiple client accounts under an MCC account.

Cheers,
Anash P. Oommen,
AdWords API Advisor.

Oliver

unread,
Jan 28, 2014, 7:09:03 PM1/28/14
to adwor...@googlegroups.com
You cannot get one report that has data for more than one account at a time.  You need to do the aggregation manually on your side after downloading each account separately.

Mike C

unread,
Jan 28, 2014, 8:35:38 PM1/28/14
to adwor...@googlegroups.com
Thanks for the response Anash.  I came across that last night but was really hoping there was a simpler way.

Constructive criticism for the API...

I use the Bing Ads API a lot as well and while the Adwords API does a lot of things better than them (especially documentation), this is one place they have a better process.  You can query stats for all accounts (at an account level) that the account you are authenticated for has access to and the results are dumped into one report.  It really is a lot simpler and faster.  Any plans for something like this in the future?

On a similar note, while I got the code working from the link you sent, it won't take 'ACCOUNT_PERFORMANCE_REPORT' as a report type when building the report definition.  It throws a 'INVALID_FIELD_NAME_FOR_REPORT' error.  Can you not pull account performance reports this way?  Currently I'm pulling them at the campaign level and combining the values but I'd prefer to just grab the stats I need (which is at the account level).

Thanks!

Bayron Galdames

unread,
Apr 21, 2014, 9:45:59 PM4/21/14
to adwor...@googlegroups.com
Is this going to be fixed?

I have hundreds of accounts to manage, it doesn't make sense to brute force data aggregation...

This used to be a feature in one of the older api versions.

It also doesn't make sense that, I can quickly generate a report for all of my accounts using the reporting interface when I log into my account but have to wait over an hour, gathering customer ids, then requesting the same report for each customer id...

Bing allows us to get all the account stats and I'm hoping this feature gets added back to the google adwords api.

A process that takes less than 30 seconds with Bing takes over an hour with Google due to this limitation.

I hope this message finds you well, 

Best Regards!

Anash P. Oommen (AdWords API Team)

unread,
Apr 22, 2014, 2:52:26 PM4/22/14
to adwor...@googlegroups.com
Hi Bayron,

We don't have any plans to add support for MCC level report / stats. You can use ManagedCustomerService.get to get all the accounts in the hierarchy, run reports in parallel, and aggregate the results at your end. 

Cheers,
Anash P. Oommen,
AdWords API Advisor.

Bayron Galdames

unread,
Apr 22, 2014, 3:54:57 PM4/22/14
to adwor...@googlegroups.com
Hi Anash,

Thank you for the response, I have over 1100 customer Ids to loop through and it is only growing. Short of doing these requests in parallel and dealing with the request limitations, it would be much simpler to make one call to get the summary data across the campaigns.

Will there be a way to download a previously defined custom report from the interface? (since the interface already handles this global summary scenario)

The only reason I chose to use the reporting api over the daily email is because the email sends a link to a page that uses javascript to asynchronously start downloading the report instead of emailing the end result csv file or zip file. A solution on such a process is not very appealing.

I appreciate the time!

-Bayron

Anash P. Oommen (AdWords API Team)

unread,
Apr 23, 2014, 3:52:23 PM4/23/14
to adwor...@googlegroups.com
Hi Bayron,

I understand your point, but unfortunately, we don't have any plans to provide this feature. One thing you could explore as an alternative is https://github.com/googleads/aw-reporting. It is written in Java, but it addresses the concerns you raised. It is actively maintained by Googlers, feel free to try it out / add feature requests, etc.

Cheers,
Anash

Irfan Rafiq

unread,
Apr 25, 2014, 8:38:58 AM4/25/14
to adwor...@googlegroups.com
Hi Bayron,

I use aw-reporting as suggested by Anash, dump all the data into a database, and then use SQL to generate any types of reports for my clients.

Irfan 



This is an e-mail from the company Just-Eat Holding Ltd. This e-mail may contain confidential information and/or privileged or personal advice. This e-mail is intended for the addressee(s) stated above only. If you receive this e-mail by mistake, please return it to Just-Eat Holding Ltd without producing, distributing or retaining copies hereof. Thank you.

Bayron Galdames

unread,
May 6, 2014, 12:05:29 AM5/6/14
to adwor...@googlegroups.com
Thanks for the links!

I've actually already built a library to handle importing costs from various media vendors which supports api and file upload, in this case I was looking to increase performance for a reconciliation system I am building to continuously pull data in waves. At the moment, the bulk of the time is spent requesting data from the google adwords api. 

I've found over time data can change for the same time period query and in an effort to both provide the latest performance stats and the most accurate data, I will need to re-query previous date ranges through out day, week, month, etc.

I appreciate the responses :)

Sincerely,

-Bayron

Bayron Galdames

unread,
May 6, 2014, 12:09:01 AM5/6/14
to adwor...@googlegroups.com
Hi Irfan,

Thanks for the response, I was actually just looking to increase performance of gathering the data, as I have over 1100 individual calls to make for keyword performance, and that will probably double as I will need to also pull ad performance as well.

It looks like the ability to make one call across all the accounts will stay in the Ad words portal for now, but that's okay I already have a solution that loops through the customers to pull all the data down.

Thanks for your time!

-Bayron

g...@algomizer.com

unread,
Nov 11, 2015, 9:54:18 AM11/11/15
to AdWords API Forum
Hi,
is there an update on that matter? Is there a way to gather statistics on all accounts in one MCC with one API call to ACCOUNT_PERFORMANCE_REPORT, or is it still to iterate and get a report per account?
I saw that in adwords application in the UI it is possible to download the report to all the accounts in one report.
Thanks,
Guy

Anash P. Oommen (AdWords API Team)

unread,
Dec 1, 2015, 5:51:06 PM12/1/15
to AdWords API Forum
Hi Guy,

No, there isn't. We don't have plans in the foreseeable future to support this feature.

Cheers,
Anash P. Oommen,
AdWords API Advisor.

Ramiro Moran

unread,
Aug 22, 2016, 6:09:51 AM8/22/16
to AdWords API Forum
Hi! Any advance on this request?
The possibility of downloading a full MCC report is crucial! Parallel report donwloading is not the best approch.
Thanks a lot.. In these days where information is crucial I can't believe Adwords still do not offer this in their API.
Greetings
Ramiro
Reply all
Reply to author
Forward
0 new messages