Download hundreds (456 and counting) of AppleScripts for Apple's iTunes that will help make managing your digital music collection easier and more fun!

Popular Now

Track CPR

Track CPR v2.0

Re-associate batch of dead tracks with files from selected folder

Make Ringable v1.1

Create a Ringtone track from a selected track

Re-Apply Downsized Artwork

Re-Apply Downsized Artwork v2.2

Resample selected tracks' artwork to user-set size limit

This Tag That Tag

This Tag That Tag v4.1

Applet assists with swapping, copying, appending data between track tags

Multi-Item Edit

Multi-Item Edit v2.0

Edit a selection of iTunes tracks' tags in single window

Whack Current Track v2.0

Deletes the current track from all playlists and moves to Trash

What's AppleScript?

AppleScript is a simple Macintosh-only programming language that can control and automate actions on your Mac. AppleScript is already available on your computer as part of the Mac OS and many popular applications can be automated using AppleScript scripts. Scripts written for iTunes can manage files and track information, create playlists, interact with other applications, perform innovative tasks, and handle many kinds of chores which otherwise would be repetitive, laborious, and/or time-consuming.

Cool! Where Do I Start?

Start browsing the site by using the scripts ↓ Menu link above. AppleScripts are gathered into these general Categories:

Or use the search box at the top of every page to try and find something specific.

Not sure how to install AppleScripts? Here's the Download/Installation FAQ & Video.

Check back often or subscribe to my Twitter feed @dougscripts, my RSS blog feed and 30 Most Recent Scripts RSS to stay notified about new and updated scripts and info.


October 31 2014 - 3:06 pm

Save Current Track’s Artwork

I don’t know why you’d want to do this on any kind of regular basis, but I thought it was kinda fun for a Friday afternoon. I wanted to see if I could save artwork from iTunes Radio tracks, but it works with whatever the current track is:

tell application “iTunes”


if player state is not stopped then

set alb to (get album of current track)

tell artwork 1 of current track

if format is JPEG picture then

set imgFormat to “.jpg”


set imgFormat to “.png”

end if

end tell

set rawData to (get raw data of artwork 1 of current track)



end if

on error

display dialog “Problem getting track info.” buttons {”OK”}


end try

end tell


set baseLoc to choose folder

on error


end try

set newPath to ((baseLoc as text) & alb & imgFormat) as text


tell me to set fileRef to (open for access newPath with write permission)

write rawData to fileRef starting at 0

tell me to close access fileRef

on error m number n

log n

log m


tell me to close access fileRef

end try

end try

Open that in Script Editor and “Save…” it as “Save Current Track’s Artwork” (or whatever) in your ~/Library/iTunes/Scripts/ folder. Whenever a track is playing, you can launch it to choose a folder in which to save the current track’s artwork. Great way to fill up your desktop with effluvia. (I’m kidding. But it would be good for that.)

October 27 2014 - 7:38 pm

iTunes 12 Bug? Selecting Audiobook Tracks Fails

Scripts and apps that use a selection of audiobook tracks from the Audiobooks library (notably Join Together, but others as well) will fail due to an apparent bug in iTunes 12. What appears to happen is that the selection object is always empty when Audiobooks library tracks are selected. Selecting audiobook tracks and then running a script as simple as this:

tell application “iTunes”

set theSelection to selection

end tell

…will always return an empty list, rather than a list of track references.

This will cause any script or app which expects a selection of Audiobooks library tracks to presume that no tracks are selected. It also affects such tracks that are dragged.

It doesn’t appear to affect tracks outside the Audiobooks library, such as MP3 voice recordings, or CD books ripped as AAC, and so on.

Thus, changing an Audiobooks library track’s media kind in its Get Info window to “Music” will avoid the issue; this will, of course, move the track out of the Audiobooks library to the Music library.

[UPDATE: A Correspondent suggests placing audiobook tracks in a separate playlist outside the Audiobooks library playlist. I can confirm that this works as well (and is likely a better workaround than changing the audio kind.)

Additionally, I have also found that a script cannot get a reference to the Audiobooks library playlist either. A "view of front window" when Audiobooks is selected returns a "unknown object type" error. This seems to indicate a problem with just the Audiobooks library and not audiobook tracks generally. Strangely, however, this works to get a ref to the Audiobooks library playlist: "set thePlaylist to (get some playlist whose special kind is Books)"]

I’ve filed a bug report.

October 27 2014 - 10:08 am

UPDATED: Multi-Item Edit v2.0

Gee, from v1.0 to v2.0 in less than a week.

I am extremely happy with the feedback on Multi-Item Edit. So I wanted to get a new version going with more tags as soon as I could manage it.

Multi-Item Edit v2.0 lets you modify the tags of a multiple selection of tracks in a single window—you can see everything without having to dart between tabs.

Version 2.0 adds Artwork, Name, Sort Name, Album Rating, Plays, Skips, Played, Last Played Date, Last Skipped Date, Lyrics and Category tags; sorting tags have been moved to a togglable side drawer. I also added “Checkmark All” and “Checkmark None” commands as a convenience. You probably wouldn’t want to apply all checkmarked tags, but you may want a majority of them (or a minority of them) and clicking on checkboxes all afternoon is no way to go through life, son.

This is a free update for registered users. Multi-Item Edit is $1.99 with a ten day full-featured trial period.

October 25 2014 - 7:51 pm

My Two iTunes 12 Bugaboos

I don’t like to complain, but:

1) When you select a CD in iTunes 12, the keyboard shortcut Command-I no longer shows the CD’s Get Info panel. The “Get Info” button does work as expected.

2) Likewise, while a CD is selected, the View menu’s “View Options…” and Command-J shortcut do not work. The menu flashes, which is quaint. But you can only show/hide the columns of a CD playlist by right-clicking the column headers.

3) (Did I say two?) Speaking of Showing columns: you can only show/hide one column at a time by using the “Show Columns” popup in the “View Options” panel. Try turning fifteen or so columns off or on and see how you feel afterwards.

October 23 2014 - 6:32 pm

Secret Get Info Window in iTunes 12

Not to undermine use of my latest, but if you want the real “old-school” Get Info window:

Select one or more tracks. Press and hold Option then Right-Click the selection. Choose “Get Info” from the contextual menu that appears. (Thanks, Paul J.)

No clue if there are plans to eventually drop it or even why it’s still there.

[UPDATE: Actually, selecting the contextual menu or the File menu and then Option-Clicking on "Get Info" gets the job done.]

October 22 2014 - 6:47 pm

UPDATED: New Last Played Date v4.0

New Last Played Date v4.0 will set the Last Played/Last Skipped date of selected tracks to a new user-entered date, with an option to increase or decrease Plays/Skips, or set tracks to no date and no Plays/Skips (effectively making them never played).

This latest version has support for OS X 10.10 Yosemite and iTunes 12, adds a “Check for Update” command, and makes a few minor UI and performance tweaks.

More information and download is here.

October 22 2014 - 6:39 pm

Yosemite Dictation Commands and iTunes AppleScripts

A new feature in OS X 10.10 Yosemite is Dictation Commands, which replaces the venerable “Speakable Items”. Essentially, this allows you to speak commands at your machine to launch apps and scripts, open files, and activate other tasks. Once you’ve set up Dictation Commands, you engage the Dictation Response HUD, a floating display indicating that your Mac is “listening”, by pressing a set of command keys (fn pressed twice, by default). While the HUD is displayed, your Mac will be listening for spoken commands which you have associated with apps, scripts, Workflows, and so on.

I was hopeful I could fire off the Play Random Album script with a voice command. What a boss I’d be at my next party.

Unfortunately, the joy-killer about using iTunes with Dictation Commands is that while the Mac is in “listening” mode waiting for you to speak a command, iTunes is muted! Even with headphones plugged in. So, to use Dictation Commands while you’re listing to iTunes, you’ve got to engage the HUD (two keyboard clicks), thus muting iTunes, speak your command to activate the script, then turn the HUD off to un-mute iTunes (another two keyboard clicks). And it’s not exactly instantaneous. If you’re launching a script to play tracks or playlists, well, you might just as well launch it from the Script menu with a mouse click.

An additional minor detail is that, while compiled scripts (.scpt) and applets (.app) work with Dictation Commands, script bundles (.scptd) do not. I use a lot the latter since I can bundle Scripting Libraries in them.

I’m sure Dictation Commands will be great for users who’d like to (or need to) bold their text by saying “Bold this text!”. But really. Four keyboard clicks. The (slight?) inconvenience of interupting my music for a few seconds. Plus the effort to set things up in System Preferences and having to convert script bundles into plain compiled scripts or slower-launching applets. (Daniel Jalkut has a couple of other gripes, too.)

This was going to be a project post on how to use Dictation Commands with various AppleScripts for iTunes because awesome. But I’m afraid it didn’t turn out that way since it’s just that much trouble to bother. The magic isn’t worth it. I’ll continue to use keyboard shortcuts.

October 22 2014 - 10:21 am

NEW: Multi-Item Edit

You may have been surprised, as I was, by the new Get Info panel in iTunes 12. While it provides pretty much the same utility as the previous incarnation’s Get Info panel, it’s souped-up UI-wise. One function that’s missing is the Multiple-Items Edit checkbox feature to designate what tag changes to apply to the selection of tracks. I think what it does now is just detect changes and apply only the changes. I think. Not sure. Anyway, I’m not 100% comfortable with that.

Here’s Multi-Item Edit:

It works just like the old Get Info window in Multiple Item mode: It recognizes any common tags and displays them. Just enter/change some text or options and checkmark the boxes for the tags you want applied to a multiple selection of tracks, including “blank” entries.

This was something I was working on over the Summer so I could batch edit tags without having to switch among Get Info window tabs. But I re-jiggered it a bit as a new release for people who like their Get Info panel old-school.

I want to note that if you notice some tags and options missing (artwork, obviously), well, this is only v1.0.

Multi-Item Edit is $1.99 with a ten day full-featured trial period.

October 19 2014 - 5:59 pm

UPDATED: Enter Description Tag for Selected v2.0

iTunes 12 no longer provides a means for editing the Description tag of multiple-selected tracks. This oldie, Enter Description Text for Selected, was just updated to v2.0 and will let you enter text for the Description tag of the selected tracks.

Technically (according to iTunes), the Description tag isn’t supposed to be applicable to music tracks. But all track entries have an AppleScript description property.

October 16 2014 - 6:33 pm

iTunes 12.0.1 is Available

Apple has released iTunes 12.0.1. It’s not just available for Yosemite, but Mavericks as well. You’ll find it via the Mac App Store in the “Updates” section.

[UPDATE: According to Apple's iTunes download page, iTunes 12 can run on OS X 10.7.5 and later.]

Site contents © 2001 - 2014 Doug Adams and weblished by Doug Adams, dougscripts AT mac DOT com. About.
All rights reserved. Legal.
AppleScript, iTunes, iPod, iPad, and iPhone are registered trademarks of Apple Inc.