Discovering Digital Library User Behavior with Google Analytics Kirk Hess University of Illinois Urbana-Champaign Hi #code4lib!

Slides:



Advertisements
Similar presentations
Getting Your Web Site Found. Meta Tags Description Tag This allows you to influence the description of your page with the web crawlers.
Advertisements

Based on Java Software Development, 5th Ed. By Lewis &Loftus
Java Script Session1 INTRODUCTION.
Problem Solving 5 Using Java API for Searching and Sorting Applications ICS-201 Introduction to Computing II Semester 071.
Stevesouders.com/docs/sfjs pptx Disclaimer: This content does not necessarily reflect the opinions of my employer.
Wincite Introduces Knowledge Notebooks A new approach to collecting, organizing and distributing internal and external information sources and analysis.
1 Using Scopus for Literature Research. 2 Why Scopus?  A comprehensive abstract and citation database of peer- reviewed literature and quality web sources.
PRESENTED BY MATT WILLIAMS, MPA OCHEA 2011 ANNUAL CONFERENCE MARCH 24, 2011 Leveraging Google Analytics To Identify and Reach Customers while Enhancing.
NWIUG / Google Analytics Sara Amato / Bowdoin College Bill Kelm / Willamette University (...and thanks to Rebekah Kilzer The Ohio State University Libraries.
Wiley Online Library. About Wiley Online Library Wiley Online Library hosts the world's broadest and deepest multidisciplinary collection of online resources.
1 An Introduction to W eb Analytics for Performance Analysts and Capacity Planners Anna Long Founder and Principal Analyst Web Analytica SM.
CHAPTER 12 UNLEASHING JAVASCRIPT USING JQUERY. LEARNING OBJECTIVES How to download the JQuery library. How to integrate the JQuery library into an HTML.
Lecture 3 – Data Storage with XML+AJAX and MySQL+socket.io
Leveraging HubSpot Enterprise To Grow Your Agency Advanced Product Setup #VARFormable 1.
NODEJS, THE JOOMLA FRAMEWORK, AND THE FUTURE IAN MACLENNAN.
Strategies for improving Web site performance Google Webmaster Tools + Google Analytics Marshall Breeding Director for Innovative Technologies and Research.
Web Site Performance An analytical approach for benchmarking and tuning.
- Barath Krishnamoorthy, Cognizant RUM - Future of Monitoring Beginning 2012 Real User Monitoring (RUM) Using Google Analytics Site Speed.
W EB A NALYTICS : W HERE VISITORS COME FROM, WHAT THEY DO, AND WHERE THEY GO ? W HAT CAN WE LEARN FROM IT ? Chuck DelCamp Product Manager, StudyAboad.com.
Gathering and Analyzing Web Use Statistics: A Practical Tutorial for Archivists Michael Szajewski, Ball State University, Archivist for Digital Development.
10 Adding Interactivity to a Web Site Section 10.1 Define scripting Summarize interactivity design guidelines Identify scripting languages Compare common.
Tag You’re It! –
JQuery Adding behaviour…. Lecture Plan Review of last lesson Adding behaviour –click, mouseover Animation –fade, slideDown Navigation –parent, find, next.
Programming Progamz pls. Importance VERY IMPORTANT.
Using Google Analytics to better understand and improve usage of your library website Gary F. Daught P.H. Welshimer Memorial Library Milligan College,
In the web address box enter Enter your user ID (first and last initial 7 digit ID number) Select Log in.
MIS 424 Professor Sandvig. Overview  Why Analytics?  Two major approaches:  Server logs  Google Analytics.
MEASURING IPV6 Using Google Analytics A Contribution to World IPv6 Day, June Emile Aben, RIPE NCC Geoff Huston, APNIC George Michaelson, APNIC.
1 Tools for Website Effectiveness. What is your site producing? Sales PR Expanding client base Brand awareness Feedback.
JavaScript, jQuery, and Mashups Incorporating JavaScript, jQuery, and other Mashups into existing pages.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
Javascript. What is JavaScript? Scripting (interpreted) language designed for the web Beware: JavaScript is case sensitive.
Lecture 101 CS110 Lecture 10 Thursday, February Announcements –hw4 due tonight –Exam next Tuesday (sample posted) Agenda –questions –what’s on.
Parents and Café Prepay Parents will be able to use Cafe Prepay to make payments to their student’s account, monitor daily account balances and view up.
Best Bets: Improving Search to High Demand Resources Tito Sierra NCSU Libraries Code4Lib 2007.
Impact for impact’s sake Tim Hitchcock Professor of Digital History University of Sussex Andries Both, ‘A Blacksmith’s Shop’, c.1640 ©British Museum.
Google Analytics & Millennium 8 th Annual MENA-IUG Conference Doha, Qatar Google Analytics & Millennium| American University of Sharjah |
Project Presentation. Traditional search engine flaws In many situations user only need the most popular or authoritative result Too much information.
ICM – API Server & Forms Gary Ratcliffe.
BARBARA ARNETT WEB SERVICES LIBRARIAN VALERIE FORRESTAL COMMUNICATIONS & NEW MEDIA STRATEGIES LIBRARIAN STEVENS INSTITUTE OF TECHNOLOGY Bridging the gap.
 Here you will learn how to access  The Library Catalog and search for a book  Your Library and Textbook account.
For Fun and Insight Leon King Computer Engineering Technology Network Support Technician.
Announcements Final Exam: TBD. Static Variables and Methods static means “in class” methods and variables static variable: one per class (not one per.
JavaScript Introduction inf385t Semantic Web 2/20/2006.
On MyPyramid Tracker’s home page, you need to check MyPyramid Tracker System Requirements for the site before you begin.
EPrints statistics at the University of Northampton Statistics for repositories: DSpace and Eprints 26/2/2013
Web Analytics and Reporting Michal Neuwirth Product Manager – Kentico Software.
Google Analytics Graham Triggs Head of Repository Systems, Symplectic.
Google Analytics THINH TRUONG (at)BIZZON thinh(at)bizzon.com.vn.
CSCI 3100 Tutorial 5 JavaScript & Ajax Jichuan Zeng Department of Computer Science and Engineering The Chinese University of Hong.
Michael J. Bennett Digital Projects Librarian & IR Coordinator University of Connecticut Eastern CONTENTdm Users Group Conference Yale University New Haven,
Surfacing Google Analytics in DSpace Claire Knowles University of Edinburgh Repositories Support Project Webinar 26 th February 2013.
Section 10.1 Define scripting
What is Google Analytics?
Assessment for Success with Institutional Repository Services
for Performance Analysts
Strategies for improving Web site performance
Blogging, Pinterest and Google Analytics
Flexible Extensible Digital Object Repository Architecture
Power Hour June 2012 Usage Metrics Learning about your audience
Flexible Extensible Digital Object Repository Architecture
Mediatekniikan Seminaari Annina Alamäki
Web Site Analytics with Google Analytics
WorldCat: Broad Web visibility for our collection
Using the Java Library API
Level up your Google Analytics with Google Tag Manager
Technical Integration Guide
Team 13 The Los Angeles Community Garden Inventory and Locator
Generate Data with Google Analytics SQL Saturday /04/2019.
Presentation transcript:

Discovering Digital Library User Behavior with Google Analytics Kirk Hess University of Illinois Urbana-Champaign Hi #code4lib!

Add Event Tracking Collect Data Export data using API Analyze Data

Why Google Analytics? AWStats++ JavaScript-based Small tracking image (visible via Firebug) = mostly users not bots Works across domains Easy to integrate with existing systems Low cost API Urchin--

Add Tracking Tracker CodejQuery: Event Injection

var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-XXXXXXXX-1']); _gaq.push(['_setAllowLinker', true]); _gaq.push(['_setDomainName', 'illinoisharvest.grainger.uiuc.edu']); _gaq.push(['_setAllowHash', false]); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = (' == document.location.protocol ? ' : ' + '.google- analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); Examples: Tracking code

if (typeof jQuery != 'undefined') { jQuery(document).ready(function($) { var filetypes = /\.(pdf|txt|dijv|xml)$/i; var baseHref = ''; if (jQuery('base').attr('href') != undefined) baseHref = jQuery('base').attr('href'); jQuery('a').each(function() { var href = jQuery(this).attr('href'); if (href && (href.match(/^https?\:/i)) && (!href.match(document.domain))) { jQuery(this).click(function() { var extLink = href.replace(/^https?\:\/\//i, ''); _gaq.push(['_link', href]); _gaq.push(['_trackEvent', 'External', 'Click', extLink]); if (jQuery(this).attr('target') != undefined && jQuery(this).attr('target').toLowerCase() != '_blank') { setTimeout(function() { location.href = href; }, 200); return false; } }); } else if (href && href.match(filetypes)) { jQuery(this).click(function() { var extension = (/[.]/.exec(href)) ? /[^.]+$/.exec(href) : undefined; var filePath = href; _gaq.push(['_trackEvent', 'Download', 'Click-' + extension, filePath]); if (jQuery(this).attr('target') != undefined && jQuery(this).attr('target').toLowerCase() != '_blank') { setTimeout(function() { location.href = baseHref + href; }, 200); return false; } }); } }); } jQuery: Push event code on to any links

Collect Data A few months later…

Google Analytics Interface Heat Map Content Drill Down Visitor Flow Events

Chicago: Awful? Discuss

Export data using API Google Analytics API Java or Javascript Export any field into a database for further analysis

public class GoogleAnalyticsIngest { // Credentials for Client Login Authorization. private static final String CLIENT_USERNAME = private static final String CLIENT_PASS = "zzzzzzzz"; // Table ID constant private static final String TABLE_ID = "ga: "; public static void main(String args[]) { try { // Service Object to work with the Google Analytics Data Export API. AnalyticsService analyticsService = new AnalyticsService("gaExportAPI_acctSample_v2.0"); // Client Login Authorization. analyticsService.setUserCredentials(CLIENT_USERNAME, CLIENT_PASS); // Get data from the Account Feed. getAccountFeed(analyticsService); // Access the Data Feed if the Table Id has been set. if (!TABLE_ID.isEmpty()) { // Get profile data from the Data Feed. getDataFeed(analyticsService);... }

Analyze Data Which items are popular? How many times was an item viewed? Downloaded? Effective Collection Size

19 th Century British Novels Collection: Events 7808 Most items are never used

Next steps Change site design Change search weighting – Allow users to sort by popularity – Recommender system Add new tracking/new repositories Analyze webstats

Code: