For those less technically-inclined, the scrobbling API defines how data gets transmitted to Last.fm every time you listen to a song. Scrobbles are incredibly important to us. They’re the building blocks of your music profile, and put together, they power basically everything that Last.fm knows about music.

The current API does a decent enough job, but we’ve had many developers complain about it being inconsistent with the other ways of accessing Last.fm data (via our web services) and its rather shoddy feedback on errors.

We also wanted to make the API more extensible so that we could define certain information which must always be submitted (like track and artist name) while allowing us to provide extra functionality in future via optional fields that wouldn’t break existing scrobblers.

600 ways to scrobble

Our scrobbling servers get a lot of traffic – at certain times of the day we have nearly 800 people telling us what they are listening to every second, and we are nearing our 40 billionth scrobble! There are also many different ways to scrobble the music you’re hearing, some developed by us (such as our official Last.fm, Android, and iPhone apps) as well as applications developed by third parties and music-loving geeks from all over the world.

Scrobbles-per-second monitor in the Last.fm operations room, powered by CactiView.

Preparing a new version of the scrobbling API

Given the heavy use of the current scrobbling API, releasing a new version of it is not something we take lightly – which is why it’s taken more than a year to get to where we are today. My post back in January 2009 generated pages of suggestions, plenty of e-mail conversations with developers and led to many hours of internal discussions and arguments involving nearly everyone in the company in some way.

We are finally able to unveil our first draft of what the new API might look like. Please bear in mind that this is not complete or final; we’re releasing it as a “request for comment” from the developer and user community. All the technical details can be read on our forum here and we’d like to keep detailed discussion there. We’ll be monitoring the post and taking feedback onboard.

Here’s a summary of just some of the highlights planned for the new API:

The scrobbling API will become a fully-fledged member of the Last.fm Web Services under a new “Scrobble” package joining its friends Track.love and Track.ban instead of being all sad and lonely on the sidelines. This should simplify things for developers by having one unified authentication, request and response mechanism. We also hope that this will lead to applications which currently just scrobble to use the rest of our API and vice-versa, with the end result being cooler apps with more features for everyone.

Migrating to the web services will improve our ability to track the use of scrobble applications, so we can do groovy things like charts of the most popular scrobblers, and analyses of musical tastes across different scrobblers. Yes, we will finally be able to answer the burning question – “Do Amarok users have better taste than XBox Live users?” We hope that our scrobbling partners and their users will be able to do cool things with this data.

Corrections information will be returned where relevant so users can be prompted to fix any incorrect metadata they may have.

Changes to Last.fm radio scrobbling will allow us to improve our recommendations. We’ll get more specific listener feedback because loves, bans and skips can be tied to a specific radio stream, not just to a particular track.

We’ll return more detailed error messages which should simplify the process of developing a scrobbler.

Third party developers will be able to upload their own icons which will show up on a Last.fm user’s profile when they are listening with a particular scrobbler. We currently provide this as a service for our most popular scrobblers but will extend this to all third party apps (this was our most requested feature after improved error logging!).

There were a lot of great ideas which didn’t make the cut, but the new API should allow us to add new features more easily and we plan to expand on this release in the future. After a round of feedback from the community we hope to put a beta version of the API out for testing and will then work towards finalising it a month or two after that. Third party developers will then be able to start updating their existing applications (or writing new ones) and passing the benefits of the new features on to you, our faithful users.

We’re hoping that by making scrobbling development easier we will be taking more steps towards getting every musical device on the planet scrobbling. Let us know what you think.

Comments

Very excited by this, and the future possibilities it opens up! I’m particularly keen on skips tied to a certain stream (will hopefully lead to improvements in global tag radios, and fewer complaints of ‘track x doesn’t belong on station y’), and the correction information being returned from submissions.

let’s make a scobbler for iPhone, just like on desktop – where I can set to scrobble at 50% of song. Now I have to listen whole song to scrobble (I have to wait until a song ends), which is sometimes impossible (fade outs, …), so I scrobble about half less songs on my iPhone (I listen mostly music on iPhone) than on desktop! That makes my last.fm profile highly inaccurate! Let’s make something about it.

I just want the scrobbling to actually work! Only about half of what i play scrobbles sometimes and my friend is the same. We both run Winamp, i use the old ml_audioscrobbler.dll plugin and he uses the desktop client.
Theres no consistency to it either, ill play an album and it might all be there or just 2 or 3 tracks.

first, sorry for my horrible english
second: Thanks for your great work. Really, thanks. I think that the new scrobbling api is (or will) best than previous is. I like the thing of icons and feedback on errors.
third: but, i have some recomendations.
The compatibility between users (neighbor) must be based on time of scrobbling, not numbers of scrobbling. Also, scrobbling on specific channel of youtube (for example VEVO); also every “X” number of scrobbling (may be 1000) send a note of congratulations or something like that to the user for acknowledgment of use of lastfm; also make some games, competitions,raffle..etc, where the award is a premium subscription for one month… or something like that.
And finally, support on spanish XD jaja.

Contratulations for the great work in this years… You are marvelous!
But… not every is like a roses garden… xD
I suggest this:
The authentication in some third party applications with last.fm account, it shouldn’t be with the username and password… it should be an autorization to access the account, controlled in the last.fm account. personally, i don’t like type the password in the apps….

We couldn’t agree more! In fact, it’s possible to scrobble today without requiring usernames and passwords (by creating scrobbling sessions using web service auth, more on that here) today, but in future it will be the only auth mechanism we support.

@Laurie Denness with jailbreaking the iPhone it gives a last.fm scrobbler over Edge, 3G, Wifi whatever, its so much more of an accurate picture of what i listen to. Jailbreaking is so simple i recommend everyone do it

I’m writting cause i’m so dissapointed about your service. Because i had been trying to sending scrobling from my ipod and i could it said always the same that there is a crash u.u’ i tried many times to sent the report and i couldn’t. Your blogs to sopport aren’t so helpfull.
Otherside, now i’m suscriptor but the trouble is that i don’t have access to download the last.fm application for my ipod touch only because i’m not living neither USA, nor Deutschland nor UK; that’s completly unfair!!! You’d give options to other countries.

I love all the various ways to scrobble to last.fm. I’m glad your focus is more on scrobbling versus playing music now. Hopefully eventually Pandora and Slacker radio will integrate with you. Meanwhile, I advise everyone to try the “lastslacker” greasemonkey script for firefox. It works great with Slacker radio for scrobbling to last.fm!

Oh gosh. Some good changes here, but I am extremely concerned with the loss of free streaming.

What you have done in cutting it out is you have excluded all of the small artists who get few breaks in terms of getting their music and their name out.

I, like many other artists, got a lot of help from the streaming services on the site in allowing people to readily listen to my music whenever they liked, and my music was more readily findable. No other site with streaming provided such a great opportunity to build community, but now without this streaming service anyone who doesn’t already have a following and a place on multiple other sites (spotify, myspace, etc) are greatly hindered. You are killing off a fundamental portion of your site with this, and I on behalf of myself and the many, many other smaller artists, ask you not to do this, or you will lose the custom of countless artists and their communities.

I don’t want to fix my metadata, I want to be able to pick whatever name I want for my tracks, and be able to auto-translate it as it scrobbles. This could be a feature of the local scrobbler or the profile, and it would finally allow Prodigy to stop getting swamped by spotify scrobbles of (The) Prodigy; we could auto-correct.

It’s a plugin bug. Same here with scrobbler plugin for qmmp (linux). Seems that it occurs when you here something with “&” in the artist name. This character is not correctly encoded by your scrobbler plugin and thus the scrobble get lost.
Simply change “&” to “and” in artist names or use another proper plugin with your player.

Would be nice if you could expose a simple API for http://status.last.fm/ so that Scrobbler Apps can check status before trying to handshake or post.

Right now the servers are down and I think you may have 100s of Scrobbler Apps continually attempting to post or handshake with a dead server. When the server comes back it could get flooded with traffic and so go down again. A status API could tell Scrobblers not to keep polling. When servers are down Scrobblers could be told some random period of time to back off (before re-querying the status).

On top of robbing users of on-demand streaming, I haven’t been able to get into last.fm for about the last 4 hours. My guess is that they brought the site down to change over to this new business model and are using the smokescreen of “server problems” (what’s being posted on Twitter) to cover this up. I have nothing to back this up — just a hunch or maybe it’s just my paranoia about how far big corporations like CBS will go for money and power. In any case, I’m bummed out and pissed off, because I really enjoyed their streaming service.

You blokes in the UK and a few other countries can access Spotify – which still isn’t as good as last.fm regardless of the claims made by David Goodman, Last.fm’s chief, in his Telegraph interview last week (http://www.telegraph.co.uk/technology/social-media/7598211/Last.fm-turns-the-volume-up.html) But us poor sods in the U.S. can’t get it. The other one he mentioned, We7, is as commercial as they come. I also have a hard time believing the statistic he stated that only 1% of their volume is for audio streaming and the rest is all scrobbling, but who knows these days with social media creating more connections than content.

last.fm RIP … There goes yet another creative, customer-oriented company swallowed up and then gutted by a big corporation in the name of profit!