chaining bulk uploads

203 views
Skip to first unread message

Claudia Kosny

unread,
Jan 26, 2015, 6:53:23 AM1/26/15
to adwords...@googlegroups.com
Hi there,

I am using Adwords scripts in combination with bulk uploads to create adgroups, ads and keywords automatically, e.g. when a new product range appears in the catalogue of the merchant. I am using bulk uploads because it seems that they are quite a bit faster than creating the adgroups/ads/keywords directly in the script.

This means that I have three bulk uploads in a row, one to create the adgroup(s), one for the ads and one for the keywords. 

The uploads for the ads and keyword rely on the adgroup to be there - therefore my question: When I initiate multiple bulk uploads in a row within one single script - is it guaranteed that the preceding upload is processed before the next one?

In my tests this worked fine, but maybe I was just lucky - it would be great  to have some 'official' information on whether bulk uploads are always processed in the sequence they are triggered in the Adwords script.

Thank you

Claudia


Alexander Wang

unread,
Jan 26, 2015, 1:29:54 PM1/26/15
to adwords...@googlegroups.com
Hi Claudia,

When you initiate a bulk upload from a script, the bulk upload will begin processing, but it can take up to 2 hours to complete (whereas the script will stop after 30 minutes or potentially 1 hour if it's an MCC script). I don't recommend waiting in the script for any uploads to complete. If you need to chain uploads, you should set up multiple scripts. In your example, I'd recommend writing one script that creates ad groups and then a second script to upload ads/keywords. You can run the ad group upload script right away and then schedule the other script to run 3 hours later. This will ensure that the ad group upload has finished (it's possible for it to time out after 2 hours, but it will at least have stopped). If you also need to upload campaigns, you'd need 3 scripts (1 for campaigns, 1 for ad groups, and 1 for ads/keywords) and to set their schedules 3 hours apart. Alternatively, you could do the chaining manually by running each script once the preceding upload(s) have completed.

(FYI, The reason for scheduling the scripts 3 hours apart instead of 2 hours apart is that we don't make guarantees on when a script will run during the hour, so it's possible for scripts to be scheduled for 1pm and 3pm and run at 1:59pm and 3:01pm, which is basically only 1 hour apart.)

I can understand the confusion here, so we'll try and incorporate this into our documentation. Probably into our guide and maybe also in our reference documentation.

Cheers,
Alex

Matt Greenland

unread,
Jan 26, 2015, 1:58:48 PM1/26/15
to adwords...@googlegroups.com
It's also possible to create the adgroups, ads, and keywords in the same spreadsheet.

Say for instance that you had the following two spreadsheets, one to create ad groups:

Campaign     , Ad group      , Default Max. CPC
Campaign name, New ad group 1, 0.94
Campaign name, New ad group 2, 0.73

And one to create keywords:

Campaign     , Ad group      , Keyword   , Max. CPC
Campaign name, New ad group 1, banana    , 0.44
Campaign name, New ad group 1, apple     , 0.24
Campaign name, New ad group 2, strawberry, 1.28
Campaign name, New ad group 2, rambutan  , 1.94

You could then instead use a single spreadsheet which'd look like this:

Campaign     , Ad group      , Default Max. CPC, Keyword   , Max. CPC
Campaign name, New ad group 1, 0.94            ,           ,
Campaign name, New ad group 2, 0.73            ,           ,
Campaign name, New ad group 1,                 , banana    , 0.44
Campaign name, New ad group 1,                 , apple     , 0.24
Campaign name, New ad group 2,                 , strawberry, 1.28
Campaign name, New ad group 2,                 , rambutan  , 1.94

Basically, add column headers for each entity type, and then leave the corresponding cells empty if they don't apply for that row. If it's possible for you to generate your uploads in a format like this, that'd guarantee that the ad groups get created first.

Claudia Kosny

unread,
Jan 27, 2015, 3:34:52 AM1/27/15
to adwords...@googlegroups.com
Hi Alexander and Matt,

Thank you very much for your feedback. At the moment my bulk uploads are fairly small (between 100-1000 entities), so they process very quickly. But since I plan to apply the same to bigger clients with a lot more entries it is very useful to know that the processing might take a couple of hours. 

Putting everything in one bulk upload is a great idea and seems to be fairly easy to handle, so I will rewrite my script to do this. One question about this: Are there any limits to the size of a single bulk upload?


Thanks

Claudia

Matt Greenland

unread,
Jan 27, 2015, 4:50:32 PM1/27/15
to adwords...@googlegroups.com
Hi Claudia,

The limits on bulk uploads are:
- 50MB maximum file size
- 1 million rows
- 2 hours processing time

If the upload has more than 1 million rows or more than 50MB of data, it'll be rejected right away. If applying it takes longer than 2 hours, it'll time out and not apply whichever bits of the spreadsheet still haven't been processed.

Claudia Kosny

unread,
Jan 29, 2015, 3:06:17 AM1/29/15
to adwords...@googlegroups.com
Hi Matt,

Thank you for the information on the limits - it is much appreciated.

Cheers

Claudia
Reply all
Reply to author
Forward
0 new messages