Back when we launched two of Tumblr’s most unique features, reblogging and the Tumblr Bookmarklet, we devised automatic “via” links in post captions as a simple solution for attribution. Three years later, this solution has gotten us pretty far. But it’s easy to spot some real shortcomings:

• It’s hard. Even with the best intentions, it’s possible to mangle attribution when reblogging. Links get dropped, and credit gets buried under reblog links.

• It’s ugly. Reblog links pile up. Credit is formatted as any permutation of url, author, blog name, and page title.

• It doesn’t play well with content that doesn’t originate on Tumblr. If I share one of Jacob’s Flickr photos, the post notes attribute me as the original poster. And posters too frequently mistakenly attribute content to re-publishers (Digg, BuzzFeed, 9GAG) instead of creators.

We know we can do better. After weeks of testing, we’ve got an upgrade that fixes all of these issues:

Starting today, reblogging will no longer insert attribution into the content/caption of the post except to quote content added by the parent post.

This means we’re no longer cluttering up post content with reblog attribution. But where did it go? The Dashboard already attributes reblogs’ parent blogs, and now it automatically attributes the source blog clearly and consistently:

But this feature has an even bigger win: When creating a post, you can now attribute its content (eg. a pull quote or image) to a source outside of Tumblr. That source gets clearly attributed everywhere that post is reblogged on Tumblr.

The bookmarklet will automatically set the source, confirming that the current page is in fact the content’s origin.

We even use graphics for some of our most popular sources:

Dope. But how does this look on your blog? First, we’ve added new theme variables to include and style post sources on Tumblr blogs. We’ve started to include these by default, and will be adding them to all featured themes over the next week. This is intended as a generic replacement for the more specific RebloggedFrom variables.

{block:ContentSource} <a href="{SourceURL}"> {lang:Source}: {block:SourceLogo} <img src="{BlackLogoURL}" width="{LogoWidth}" height="{LogoHeight}" alt="{SourceTitle}" /> {/block:SourceLogo} {block:NoSourceLogo} {SourceTitle} {/block:NoSourceLogo} </a> {/block:ContentSource}

Alternately, any themes that don’t include this attribution will have it automatically inserted at the end of posts. That is unless attribution already appears in the post (which will be automatically detected).

There you have it. Parent and source posters always clearly attributed, even if they live outside Tumblr. And as always, the entire reblog lineage is preserved in the post notes.

We’ll be rolling these out over the next few hours. Please let us know if you catch anything acting funny tonight!