diff --git a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
index 337c6582..e63e052c 100644
--- a/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
+++ b/web/pgadmin/tools/sqleditor/static/css/sqleditor.css
@@ -14,6 +14,20 @@
   bottom: 0;
 }
 
+.sql-scratch {
+  width: 100%;
+  height: 100%;
+  box-sizing: border-box;
+}
+
+.sql-scratch textarea {
+  width: 100%;
+  height: calc(100% - 3px);
+  box-sizing: border-box;
+  border: none;
+  resize: none;
+}
+
 .sql-editor-grid-container {
   height: 100%;
   overflow: auto;
diff --git a/web/pgadmin/tools/sqleditor/static/js/sqleditor.js b/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
index 97a8e185..615d983d 100644
--- a/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
+++ b/web/pgadmin/tools/sqleditor/static/js/sqleditor.js
@@ -168,7 +168,7 @@ define('tools.querytool', [
       // Create main wcDocker instance
       var main_docker = new wcDocker(
         '#editor-panel', {
-          allowContextMenu: false,
+          allowContextMenu: true,
           allowCollapse: false,
           loadingClass: 'pg-sp-icon',
           themePath: url_for('static', {
@@ -182,8 +182,8 @@ define('tools.querytool', [
       var sql_panel = new pgAdmin.Browser.Panel({
         name: 'sql_panel',
         title: gettext('Query Editor'),
-        width: '100%',
-        height: '50%',
+        width: '75%',
+        height: '33%',
         isCloseable: false,
         isPrivate: true,
       });
@@ -267,6 +267,16 @@ define('tools.querytool', [
         content: '<div id ="history_grid" class="sql-editor-history-container" tabindex: "0"></div>',
       });
 
+      var scratch = new pgAdmin.Browser.Panel({
+        name: 'scratch',
+        title: gettext('Scratch Pad'),
+        width: '25%',
+        height: '100%',
+        isCloseable: true,
+        isPrivate: false,
+        content: '<div class="sql-scratch" tabindex: "0"><textarea wrap="off"></textarea></div>',
+      });
+
       var notifications = new pgAdmin.Browser.Panel({
         name: 'notifications',
         title: gettext('Notifications'),
@@ -292,6 +302,7 @@ define('tools.querytool', [
       explain.load(main_docker);
       messages.load(main_docker);
       history.load(main_docker);
+      scratch.load(main_docker);
       notifications.load(main_docker);
       geometry_viewer.load(main_docker);
 
@@ -301,6 +312,7 @@ define('tools.querytool', [
       self.messages_panel = main_docker.addPanel('messages', wcDocker.DOCK.STACKED, self.data_output_panel);
       self.notifications_panel = main_docker.addPanel('notifications', wcDocker.DOCK.STACKED, self.data_output_panel);
       self.history_panel = main_docker.addPanel('history', wcDocker.DOCK.STACKED, sql_panel_obj);
+      self.scratch_panel = main_docker.addPanel('scratch', wcDocker.DOCK.RIGHT, sql_panel_obj);
 
       self.render_history_grid();
       queryToolNotifications.renderNotificationsGrid(self.notifications_panel);
