This guide will show you how to add sharing buttons to your blog posts to give your readers the ability to easily share your content with Twitter, Facebook, Tumblr, LinkedIn, and a host of other services to help spread your message across the web.
For general features and FAQs, please see our information page.

Sharing gives readers the tools to post your content to their networks from the bottom of each post and/or page. You can configure services to appear as icons, text, or both. Some services also display the number of times the post has been shared, as reported by that service.
Activating Sharing Buttons

To activate the Sharing buttons:
- In the WP Admin, go to Jetpack → Settings → Sharing.
- Under Sharing buttons, activate the Add sharing buttons to your posts and pages option.
Adding and Configuring Sharing Buttons
Once the feature is active you can add sharing buttons to your site in four short steps:
- Navigate to Settings → Sharing in your site’s WP Admin, or you can paste the following URL besides your domain:
yoursite.com/wp-admin/options-general.php?page=sharing
- Under Sharing Buttons, drag and drop the services you want to use into the Enabled Services area in any order you wish. You can also drag services into a box in the Enabled Services area that will hide those services behind a share button.
- Choose your preferred button style and where you would like the buttons to appear.
- Click Save Changes.
* Sharing buttons can also be managed in WordPress.com via Tools → Marketing → Sharing Buttons.
To add new services, drag the button into the Enabled Services area at any time.
Sharing Button Options
There are a few options that you can customize on your sharing buttons:
- Button Style: This option allows you to choose to display buttons with the Icon + Text, Icon Only, Text Only, or the service’s official sharing button.
- Sharing Label: This option allows you to customize the message that shows above your sharing buttons.
- Show buttons on: This option allows you to choose to show sharing buttons on the Front Page, Archive Pages, and Search Results, Posts, Pages, and/or Media.
- Twitter Site Tag: Adding your Twitter username in this field will add a custom via @TwitterUsername message on the end of the shared tweet.
- Disable CSS and JS: Advanced. If this option is checked, you must include these files in your theme manually for the sharing links to work.
Supported Services
The following services are currently supported:
- Email*
- Mastodon
- Tumblr
- Skype
- Telegram
Customize Buttons Link
If you view your website when logged in as an administrator, you will see a Customize buttons link below your sharing buttons:

This provides a quick shortcut for you to change your button settings. It will not be visible to non-admin visitors to your site.
Troubleshooting FAQs
The buttons don’t show the number of shares/likes.
Not all services allow share counts to be displayed. Twitter will not show the number of shares. Facebook Share numbers are a total of shares, likes, and comments on Facebook.
Share counts are only displayed on the “official buttons” for certain services. Try selecting official buttons from the Button Style dropdown if the number of shares does not display. Pinterest’s Pin-It Button will only show on images if you are using the Official Buttons style.
The Sharing buttons are not displaying.
Check your Sharing settings at Settings → Sharing and make sure you have enabled the sharing buttons on the post types you want to display them on:
The share counts have been reset to zero.
The totals shown for each official sharing button are reported from the services themselves: Facebook, Twitter, etc. To calculate the total count, those services use the exact URL of the post when it was originally shared.
If your site’s URL changes in any way (for example, changing from http to https, or changing the permalink structure), since the exact URL of the posts has now changed, the counts will have been reset to zero.
And since the count data lies with each service and not on WordPress.com or with Jetpack, there’s no way for us to merge or update those totals on our end.
I don’t see a Sharing section on my WordPress.com dashboard.
When Sharing is activated, you should find a Sharing Buttons section in your WordPress.com dashboard, under Tools → Marketing. If you don’t see it, please follow this guide to make sure the Sharing feature is not disabled.
Customization FAQs
How do I create my own custom sharing buttons?
- Navigate to Settings → Sharing on your WP Admin dashboard.
- Click the Add a new service link in the Available Services section.

- Enter a “Service name” to use for the sharing service. It will appear in the link to the service and in the blog sharing stats.
- Enter the “Sharing URL.” This is the URL address to the sharing service. You can use the variables,
%post_title%
%post_url%
(short URL),%post_full_url%
and%post_excerpt%
in the URL, i.e.http://www.google.com/buzz/post?url=%post_url% - Enter the “Icon URL.” This is the URL address to the icon image you wish to use to display with this service, i.e. https://www.someserver.com/images/buzz.png. Note that this image should be available online at the link that you enter here.
- Click the “Create Share Button” button.
- The new service will appear in the Available Services section. You can now add it to the Enabled Services section to use on your site.
As you customize the sharing services, you can see how they are ordered in the Live Preview section.
How can I move where the sharing icons are displayed?
By default, the sharing icons will display right at the bottom of your post’s content. You may want to move it elsewhere in your post, such as right before the content.
To do this, in your functions.php file, add the following:
function jptweak_remove_share() {
remove_filter( 'the_content', 'sharing_display', 19 );
remove_filter( 'the_excerpt', 'sharing_display', 19 );
if ( class_exists( 'Jetpack_Likes' ) ) {
remove_filter( 'the_content', array( Jetpack_Likes::init(), 'post_likes' ), 30, 1 );
}
}
add_action( 'loop_start', 'jptweak_remove_share' );
Then find the file for the location where you’d like the sharing icons to appear. Insert the following code in the area you want the Sharing or Likes buttons to appear:
if ( function_exists( 'sharing_display' ) ) {
sharing_display( '', true );
}
if ( class_exists( 'Jetpack_Likes' ) ) {
$custom_likes = new Jetpack_Likes;
echo $custom_likes->post_likes( '' );
}
add_action( 'loop_start', 'jptweak_remove_share' );
Please note that this code is provided as a courtesy and we do not provide support for implementing or editing custom code.
How can I hide the sharing buttons on mobile?
Insert this code in your functions.php file:
// Check if we are on mobile
function jetpack_developer_is_mobile() {
// Are Jetpack Mobile functions available?
if ( ! function_exists( 'jetpack_is_mobile' ) ) {
return false;
}
// Is Mobile theme showing?
if ( isset( $_COOKIE['akm_mobile'] ) && $_COOKIE['akm_mobile'] == 'false' ) {
return false;
}
return jetpack_is_mobile();
}
// Let's remove the sharing buttons when on mobile
function jetpack_developer_maybe_add_filter() {
// On mobile?
if ( jetpack_developer_is_mobile() ) {
add_filter( 'sharing_show', '__return_false' );
}
}
add_action( 'wp_head', 'jetpack_developer_maybe_add_filter' );
add_action( 'loop_start', 'jptweak_remove_share' );
How do I use my own resources instead of Jetpack’s default sharing CSS and JS files?
The sharing feature includes an “advanced” option, allowing you to use your own Javascript and CSS files instead of the files added by Jetpack by default.
To get started, go to Settings → Sharing in your dashboard, and check the Advanced checkbox at the bottom of the page.
Then, you can add your own libraries by adding the following code in a functionality plugin or in your theme’s functions.php file:
function tweakjp_add_sharing_js() {
wp_enqueue_script( 'sharing-js', WP_SHARING_PLUGIN_URL . 'sharing.js', array( ), 4 );
$sharing_js_options = array(
'lang' => get_base_recaptcha_lang_code(),
'counts' => apply_filters( 'jetpack_sharing_counts', true )
);
wp_localize_script( 'sharing-js', 'sharing_js_options', $sharing_js_options );
}
add_action( 'wp_enqueue_scripts', 'tweakjp_add_sharing_js' );
function tweakjp_add_sharing_css() {
wp_enqueue_style( 'sharing', WP_SHARING_PLUGIN_URL. 'sharing.css', false, JETPACK__VERSION );
}
add_action( 'wp_enqueue_scripts', 'tweakjp_add_sharing_css' );
How do I add “via @username” to the tweets sent via the Twitter button?
You can fill in the “Twitter Site Tag” option in Settings → Sharing.
Still need help?
Please contact support directly. We’re happy to advise.
Privacy Information
This feature is de-activated by default. It can be activated at any time by toggling the Add sharing buttons to your posts and pages setting in the Sharing buttons section from Jetpack → Settings → Sharing in your dashboard.
Data Used | |
---|---|
Site Owners / Users
If you add your Twitter username to the Sharing settings, it will be published with the tweet sharing your content. The post title and permalink will also be shared with any of the services. Moreover, if you have Akismet enabled on your site, and a visitor attempts to share a post via email, the site’s home page URL and the post’s permalink will be sent in the API call to Akismet in order to check for spam.Additionally, for activity tracking (detailed below): IP address, WordPress.com user ID, WordPress.com username, WordPress.com-connected site ID and URL, Jetpack version, user agent, visiting URL, referring URL, timestamp of event, browser language, country code. |
Site Visitors
When official sharing buttons are active on the site, each button loads content directly from its service in order to display the button as well as information and tools for the sharing party. As a result, each service can in turn collect information about the sharing party. When a non-official Pinterest sharing button is active on the site, information such as the sharing party’s IP address as well as the page URL will be made available to Pinterest, so sharing counts can be displayed next to the button. In addition, Pinterest may add cookies to the page. When sharing content via email (this option is only available if Akismet is active on the site), the following information is used: sharing party’s name and email address (if the user is logged in, this information will be pulled directly from their account), IP address (for spam checking), user agent (for spam checking), and email body/content. This content will be sent to Akismet (also owned by Automattic) so that a spam check can be performed. Additionally, if reCAPTCHA (by Google) is enabled by the site owner, the sharing party’s IP address will be shared with that service. You can find Google’s privacy policy here. |
Activity Tracked | |
Site Owners / Users
We track when, and by which user, the feature is activated and deactivated. We track when, and which, configuration settings are modified (and by which user). |
Site Visitors
Email shares will be sent to Akismet (also owned by Automattic) and logged there. See above for the specific data sent to Akismet. |
Data Synced (Read More) | |
Site Owners / Users
We sync options that identify whether or not the feature is activated and how its available settings are configured. |
Site Visitors
None. |