diff --git a/briar-android/res/menu/blogs_my_blog_actions.xml b/briar-android/res/menu/blogs_my_blog_actions.xml
index 5c9052edb01da64626f8a04b6e59f8728a37bf1f..95cb880e767e1eb826d1df231d74cb0ec25800c0 100644
--- a/briar-android/res/menu/blogs_my_blog_actions.xml
+++ b/briar-android/res/menu/blogs_my_blog_actions.xml
@@ -9,4 +9,10 @@
 		android:title="@string/blogs_write_blog_post"
 		app:showAsAction="ifRoom"/>
 
+	<item
+		android:id="@+id/action_delete_blog"
+		android:icon="@drawable/action_delete_white"
+		android:title="@string/blogs_delete_blog"
+		app:showAsAction="never"/>
+
 </menu>
\ No newline at end of file
diff --git a/briar-android/res/values/strings.xml b/briar-android/res/values/strings.xml
index d283c5c978ccdc6b3803b3532c97a5e72297951c..0c5bfab9328633695c421ec5ee9f0d60d6923734 100644
--- a/briar-android/res/values/strings.xml
+++ b/briar-android/res/values/strings.xml
@@ -269,6 +269,11 @@
 	<string name="blogs_publish_blog_post">Publish</string>
 	<string name="blogs_blog_failed_to_load">Blog failed to load</string>
 	<string name="blogs_blog_post_failed_to_load">Blog Post failed to load</string>
+	<string name="blogs_delete_blog">Delete Blog</string>
+	<string name="blogs_delete_blog_dialog_message">Are you sure that you want to delete this Blog and all posts?\nNote that this will not delete the blog from other people\'s devices.</string>
+	<string name="blogs_delete_blog_ok">Delete Blog</string>
+	<string name="blogs_delete_blog_cancel">Keep</string>
+	<string name="blogs_remove_blog">Remove Blog</string>
 
 	<string name="blogs_blog_list">Blog List</string>
 	<string name="blogs_available_blogs">Available Blogs</string>
diff --git a/briar-android/res/values/themes.xml b/briar-android/res/values/themes.xml
index e87077f031f9ec1e2db96c41eba58cd7f88ff95c..49c05904f621ef1462ff5b771b7b73cf5dddc11d 100644
--- a/briar-android/res/values/themes.xml
+++ b/briar-android/res/values/themes.xml
@@ -42,6 +42,8 @@
 		<item name="colorPrimary">@color/briar_primary</item>
 		<item name="colorPrimaryDark">@color/briar_primary_dark</item>
 		<item name="colorAccent">@color/briar_accent</item>
+		<item name="buttonBarPositiveButtonStyle">@style/BriarButtonFlat.Positive</item>
+		<item name="buttonBarNegativeButtonStyle">@style/BriarButtonFlat.Negative</item>
 		<item name="android:textColorPrimary">@color/briar_text_primary</item>
 		<item name="android:textColorPrimaryInverse">@color/briar_text_primary_inverse</item>
 		<item name="android:textColorSecondary">@color/briar_text_secondary</item>
@@ -49,6 +51,12 @@
 		<item name="android:textColorTertiary">@color/briar_text_tertiary</item>
 		<item name="android:textColorTertiaryInverse">@color/briar_text_tertiary_inverse</item>
 		<item name="android:textColorLink">@color/briar_text_link</item>
+		<item name="android:windowAnimationStyle">@style/DialogAnimation</item>
+	</style>
+
+	<style name="DialogAnimation" parent="@android:style/Animation.Dialog">
+		<item name="android:windowEnterAnimation">@android:anim/fade_in</item>
+		<item name="android:windowExitAnimation">@android:anim/fade_out</item>
 	</style>
 
 	<!-- This fixes a UI bug in the support preference library -->
diff --git a/briar-android/src/org/briarproject/android/blogs/BlogController.java b/briar-android/src/org/briarproject/android/blogs/BlogController.java
index ba9d085c2400d91ce520891bfc275e24f6060ca4..a805c2d344e52c6295d60b90e7a79b563604583e 100644
--- a/briar-android/src/org/briarproject/android/blogs/BlogController.java
+++ b/briar-android/src/org/briarproject/android/blogs/BlogController.java
@@ -22,6 +22,8 @@ public interface BlogController extends ActivityLifecycleController {
 	@Nullable
 	MessageId getBlogPostId(int position);
 
+	void deleteBlog(final UiResultHandler<Boolean> resultHandler);
+
 	interface BlogPostListener {
 		void onBlogPostAdded(final BlogPostItem post, final boolean local);
 	}
diff --git a/briar-android/src/org/briarproject/android/blogs/BlogControllerImpl.java b/briar-android/src/org/briarproject/android/blogs/BlogControllerImpl.java
index f90a930953fe4e8f909bd39b1d79d1da8eb851a6..eca0bd340be3ce76bfd812c6029d196553adadc3 100644
--- a/briar-android/src/org/briarproject/android/blogs/BlogControllerImpl.java
+++ b/briar-android/src/org/briarproject/android/blogs/BlogControllerImpl.java
@@ -5,6 +5,7 @@ import android.support.annotation.Nullable;
 
 import org.briarproject.android.controller.DbControllerImpl;
 import org.briarproject.android.controller.handler.UiResultHandler;
+import org.briarproject.api.blogs.Blog;
 import org.briarproject.api.blogs.BlogManager;
 import org.briarproject.api.blogs.BlogPostHeader;
 import org.briarproject.api.db.DbException;
@@ -168,4 +169,25 @@ public class BlogControllerImpl extends DbControllerImpl
 		return null;
 	}
 
+	@Override
+	public void deleteBlog(final UiResultHandler<Boolean> resultHandler) {
+		runOnDbThread(new Runnable() {
+			@Override
+			public void run() {
+				if (data.getGroupId() == null) {
+					resultHandler.onResult(false);
+					return;
+				}
+				try {
+					Blog b = blogManager.getBlog(data.getGroupId());
+					blogManager.removeBlog(b);
+				} catch (DbException e) {
+					if (LOG.isLoggable(WARNING))
+						LOG.log(WARNING, e.toString(), e);
+					resultHandler.onResult(false);
+				}
+			}
+		});
+	}
+
 }
diff --git a/briar-android/src/org/briarproject/android/blogs/BlogFragment.java b/briar-android/src/org/briarproject/android/blogs/BlogFragment.java
index 430cc611a1ef448f66b93d021427b1c5aebddd1a..ba142cf4e253ef6fb4b569a7adbb99616fa34cb8 100644
--- a/briar-android/src/org/briarproject/android/blogs/BlogFragment.java
+++ b/briar-android/src/org/briarproject/android/blogs/BlogFragment.java
@@ -1,11 +1,13 @@
 package org.briarproject.android.blogs;
 
+import android.content.DialogInterface;
 import android.content.Intent;
 import android.os.Bundle;
 import android.support.annotation.Nullable;
 import android.support.design.widget.Snackbar;
 import android.support.v4.app.ActivityCompat;
 import android.support.v4.app.ActivityOptionsCompat;
+import android.support.v7.app.AlertDialog;
 import android.support.v7.widget.LinearLayoutManager;
 import android.view.LayoutInflater;
 import android.view.Menu;
@@ -144,6 +146,9 @@ public class BlogFragment extends BaseFragment implements BlogPostListener {
 				ActivityCompat.startActivityForResult(getActivity(), i,
 						REQUEST_WRITE_POST, options.toBundle());
 				return true;
+			case R.id.action_delete_blog:
+				showDeleteDialog();
+				return true;
 			default:
 				return super.onOptionsItemSelected(item);
 		}
@@ -188,4 +193,34 @@ public class BlogFragment extends BaseFragment implements BlogPostListener {
 		loadData(true);
 	}
 
+	private void showDeleteDialog() {
+		DialogInterface.OnClickListener okListener =
+				new DialogInterface.OnClickListener() {
+					@Override
+					public void onClick(DialogInterface dialog, int which) {
+						deleteBlog();
+					}
+				};
+		AlertDialog.Builder builder = new AlertDialog.Builder(getActivity(),
+				R.style.BriarDialogTheme);
+		builder.setTitle(getString(R.string.blogs_delete_blog));
+		builder.setMessage(getString(R.string.blogs_delete_blog_dialog_message));
+		builder.setPositiveButton(R.string.blogs_delete_blog_cancel, null);
+		builder.setNegativeButton(R.string.blogs_delete_blog_ok, okListener);
+		builder.show();
+	}
+
+	private void deleteBlog() {
+		blogController.deleteBlog(
+				new UiResultHandler<Boolean>(getActivity()) {
+					@Override
+					public void onResultUi(Boolean result) {
+						if (!result) return;
+						Toast.makeText(getActivity(), R.string.forum_left_toast,
+								LENGTH_SHORT).show();
+						getActivity().supportFinishAfterTransition();
+					}
+				});
+	}
+
 }