diff --git a/src/config/defaults.js b/src/config/defaults.js
index b6ecc380ec99ddd3b165c5ebe0ef90f607d22026..25658e1c5fa45aad476f367bd1fa2ef10565e40f 100644
--- a/src/config/defaults.js
+++ b/src/config/defaults.js
@@ -3,6 +3,7 @@ module.exports = {
   templates: {
     branchName: params => `renovate/${params.depName}-${params.newVersionMajor}.x`,
     commitMessage: params => `Update dependency ${params.depName} to version ${params.newVersion}`,
+    commitMessagePin: params => `Pin dependency ${params.depName} to version ${params.newVersion}`,
     prBody: params => `This Pull Request updates dependency ${params.depName}` +
       ` from version ${params.currentVersion} to ${params.newVersion}
 
diff --git a/src/index.js b/src/index.js
index bf28f2dd53645595a401e0f5c5cbd9991a4a1db6..7b27f04db59c113fecf0ab92d81704c151163f34 100644
--- a/src/index.js
+++ b/src/index.js
@@ -78,18 +78,22 @@ function updateDependency(upgrade) {
   const newVersion = upgrade.newVersion;
   // Use templates to generate strings
   const branchName = config.templates.branchName(upgrade);
+  let commitFunction = null;
   let prFunction = null;
   if (upgrade.upgradeType === 'pin') {
+    commitFunction = config.templates.commitMessagePin;
     prFunction = config.templates.prTitlePin;
   } else if (upgrade.upgradeType === 'minor') {
     // Use same title for range or minor
+    commitFunction = config.templates.commitMessage;
     prFunction = config.templates.prTitleMinor;
   } else {
+    commitFunction = config.templates.commitMessage;
     prFunction = config.templates.prTitleMajor;
   }
+  const commitMessage = commitFunction(upgrade);
   const prTitle = prFunction(upgrade);
   const prBody = config.templates.prBody(upgrade);
-  const commitMessage = config.templates.commitMessage(upgrade);
 
   // Check if same PR already existed and skip if so
   // This allows users to close an unwanted upgrade PR and not worry about seeing it raised again