Important: Changes to Twitter API
Because Twitter are making changes to their API this version of TAGS will stop working in March 2013. TAGSv5.0 is compatible with the new API and you should get it here!
For existing TAGS users:
What will happen to my existing TAGS sheets?
When Twitter turn off the old API (test outages this March) all authenticated and unauthenticated search requests will stop working.
How do I upgrade my existing version of TAGS?
As I can’t push an update to existing copies of TAGS you’ll have to manually update by opening your spreadsheet, then opening Tools > Script editor… and replacing the section of code that starts function getTweets() { and finishes 134 lines later (possiblly with the line function twDate(aDate){ ) with the code here. [And yes I know that’s a pain in the ass but best I could do] … or you can just start a new archive using TAGSv5.0
To support my research in Twitter community visualisation I’ve updated my Twitter Archiving Google Spreadsheet (TAGS) [formerly called twitteralytics – I pre-emptively changed the name to play nice with Twitter ToS].
This new version has some coding improvements and new features including a dashboard summary and advanced tools for getting user profile information and friend/follower relationships for social network analysis.
You can get a copy by selecting one of the links below [make sure you are looked in to your Google account first]:
*** Twitter Archive Google Spreadsheet – TAGS v3.0 ***
*** Twitter Archive Google Spreadsheet – TAGS v5.0 ***
[Please rate it in the Template Gallery]
[If the first link doesn't work try making a copy from the Template Gallery
or Opening this Spreadsheet and File > Make a copy]
Below are the setup instructions for TAGS v3.x and may not work with TAGS v5.0
Basic setup/use
- Open the TAGS Google Spreadsheet and copy
- On the Readme/Settings sheetenter the following settings (starting in cell B9):
- Who are you = any web address that identifies you or your event
- Search term = what you are looking for eg #cetis12
- Period = default
- No. results = 1500 (this is the maximum twitter allows but without authenticated access you might get less. See the Advanced setup for info on configuration)
- Continuous/paged = continuous
- To configure the spreadsheet to automatically update select Tools > Script Editor … and then in the Script Editor window select Triggers > Current script’s triggers… and Add a new trigger. Select to run ‘collectTweets’ as a ‘Time-driven’ choosing a time period that suits your search (For unauthenticated access I collect 1500 tweets every hour). Click ‘Save’

- The collection can manually be trigger by TAGS > Run Now! (Results appear on the ‘Archive’ Sheet).
Advanced setup/use
- Open the TAGS Google Spreadsheet and make a copy
- Register for an API key with Twitter at http://dev.twitter.com/apps/new. In the form these are the important bits:
- Application Website = anything you like
- Application Type = Browser
- Callback URL = https://spreadsheets.google.com/macros
- Default Access type = Read-only
- Once finished filling in the form and accepting Twitter’s terms and conditions you’ll see a summary page which includes a Consumer Key and Consumer Secret
- Back in the Google Spreadsheet select Twitter > API Authentication (you’ll need to select this option twice, the first time to authorise read/write access to the spreadsheet). Paste in your Consumer Key and Secret from the previous step and click ‘Save’ (if the Twitter menu is not visible click on the blue button to show it)
- From the spreadsheet select Tools > Script Editor … and then Run > authenticate and Authorize the script with Twitter using your Twitter account
- While still in the Script Editor window select Triggers > Current script’s triggers… and Add a new trigger. Select to run ‘collectTweets’ as a ‘Time-driven’ choosing a time period that suits your search (I usually collect 1500 tweets once a day, but increase to hourly during busy periods eg during a conference). Click ‘Save’

- Now close the Script Editor window. Back in the main spreadsheet on the Readme/Settings sheetenter the following settings (starting in cell B9):
- Who are you = any web address that identifies you or your event
- Search term = what you are looking for eg #cetis12
- Period = default
- No. results = 1500 (this is the maximum twitter allows)
- Continuous/paged = continuous
- Click TAGS > Run Now! to check you are collecting results into a ‘Archive’ sheet
- To allow the results to be visualised from the spreadsheet select File > Publish to the web…You can choose to Publish All sheets or just the Archive sheet. Make sure Automatically republish when changes are made is ticked and click Start publishing
Creating a public interactive visualisation of the archived conversation
- Copy the url of the published spreadsheet
- Visit http://hawksey.info/tagsexplorer and paste your spreadsheet url in the box, then click‘get sheet names’
- When it loads the sheet names leave it on the default ‘Archive’ and click ‘go’
- You now have a visualisation of your spreadsheet archive (click on nodes to delve deeper)
- To share the visualisation at the top right-click ‘link for this’ which is a permanent link (as your archive grows and the spreadsheet is republished this visualisation will automatically grow)
Quick way to display archive community (Links) data
- Run TAGS Advanced menu options (1-3)
- Copy the url of the published spreadsheet
- Visit http://hawksey.info/edgesexplorer and paste your spreadsheet url in the box, then click‘get sheet names’
- When it loads the sheet names leave it on the default ‘Links’ and click ‘go’
Last updated by at .

Loading...

“The coordinates or dimensions of the range are invalid” I keep getting this response when I try to run the advanced version step #1
Also, thank you in advance for you help :) Is there anyway that I can pick out a piece of time to analyze. For instance, I want to analyze an hour long twitter chat on 12/12/12 – is there a way to do that? thanks again!
To do an analysis on a specific time range I make a copy of the spreadsheet with data in and delete the extra tweets from the Archive sheet and then do the analysis
Hi Martin,
Awesome tool! I have a quick question: I’m using this TAGS to archive tweets related to a recent book release, so I’m grabbing tweets with the most relevant hashtag and tweets at the author, but I also want to grab tweets BY the author and I haven’t been able to figure out what language to use to do that in the search term field. Can you help?
Hi Jessica – some more info on search operators in this comment, but basically you could use ‘#yourtag OR to:your_author OR from:your_author’ (without quotes)
Martin
Hi Martin, I’m getting an error message ‘script invoked too many times for one day’ when trying to set up a new archive. Why is this/what can I do to overcome this?
You might be hitting quota limits https://developers.google.com/apps-script/quotas
Most of my archives are low volume so I can setup the script to only run once a day which means I can have multiple archives running at the same time
Hi, thanks for getting back to me so quickly. I’m archiving tweets pertaining to the hashtag Glasgow2014 for my PhD research so I’ve been setting up a new spreadsheet whenever one reaches its cell limit and was therefore trying to set up a new one. I had also started archives relating to #CWG, Commonwealth Games, Gc2018, and Gold Coast 2018 for future research projects. If I delete some of the latter, should I then be able to set up the new archive for my current research? Or what else can I do to overcome this? I’m not very technologically minded! :-)
Hi Martin,
thanks! A great tool!
Got it set up good for continuous tracking.
I am tracking a hashtag which is supposed to have generated 25,000 or so tweets within the last 3 days. I guess I am a bit late starting the tracking.
I am having trouble getting a hold of the earlier ones though. I always retrieve the same tweets. Is there a possibility to adjust the time frame in a more granular way?
All the best!
Unfortunately it’s a limitation of the Twitter api. You might want to look at datasift.com to get more data
Hey Martin!
Thanks for this application, it is a life saver. I do have one question–not sure if you answered it already (I didn’t see it while I was skimming)–for “search term” I had 1 hashtag, changed it to 2 hashtags and then back to the original 1 hashtag. But the results of the 2nd hashtag still appear in the archive–is there a way that I can reset it back to the original search term to show the just results of the 1 hashtag or somehow delete the tweets pulled for the 2nd search term?
Thanks!
Hi Erica – I had a similar problem recently. What I did was scroll through the archive sheet looking for first occurrence of hashtag 2 and then selected all the rows until it went back to hashtag 1 and deleted them
Perfect, this works–thank you!