{"id":6068,"date":"2026-07-07T16:55:01","date_gmt":"2026-07-07T13:55:01","guid":{"rendered":"https:\/\/www.scalahosting.com\/kb\/?p=6068"},"modified":"2026-07-07T16:55:02","modified_gmt":"2026-07-07T13:55:02","slug":"change-delete-ftp-sub-user-spanel","status":"publish","type":"post","link":"https:\/\/www.scalahosting.com\/kb\/change-delete-ftp-sub-user-spanel\/","title":{"rendered":"How to Change or Delete an FTP Sub-User in SPanel"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">In SPanel, you manage an FTP sub-user from the FTP Accounts page. To rotate a password, open the row&#8217;s <strong>Actions<\/strong> menu and choose <strong>Change password<\/strong>. To remove access, tick the account&#8217;s checkbox and click <strong>Delete Selected<\/strong>, then confirm.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Note up front<\/strong>: deleting the sub-user removes its login but leaves the files in its home directory untouched, so cleanup is a separate step.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Who this is for<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is for site owners who gave a contractor, freelancer, or agency their own FTP login and now need to change that password or pull the access &#8211; because the project wrapped, credentials leaked, or it&#8217;s time for a routine rotation. You want to act on that one sub-user without disturbing your main account login or anyone else&#8217;s access.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What problem this solves<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When a job ends, leaving a working FTP login in someone&#8217;s client is a standing risk. Sharing your main account password instead would be worse &#8211; you&#8217;d have to change your own credentials and re-point every tool you own. The narrow task is to change or revoke one contractor&#8217;s access without collateral damage, and SPanel&#8217;s per-account controls handle that directly.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>How SPanel solves this<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In SPanel, each FTP sub-user is a separate login listed on the FTP Accounts page. Every row has an Actions menu with two entries: <strong>Change password<\/strong> and <strong>Connect an FTP client<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To rotate a password, open Actions and choose Change password. SPanel opens a dialog where you set the new password and save. The change applies to that sub-user only &#8211; your main account login is unaffected.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To revoke access, you don&#8217;t use the Actions menu. Select the account&#8217;s checkbox and click Delete Selected. SPanel asks you to confirm before removing the login. After you confirm, the sub-user disappears from the list and can no longer connect. There is no rename option; for a different username, delete the account and create a new one.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Why this is different in SPanel<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Two details are worth calling out. First, credential management is scoped: you change or remove a single sub-user without touching the main account password or its files. The contractor&#8217;s login is its own object, so revoking it is a clean, contained action.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Second, a password change takes effect immediately for the next connection. There&#8217;s no propagation delay. The moment you save, the old password stops working. That matters when you&#8217;re rotating credentials after a possible leak.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Before you start<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Access to SPanel for the account that owns the FTP sub-user.<\/li>\n\n\n\n<li>Know which sub-user you&#8217;re acting on. The list uses the &lt;account>_&lt;subuser> namespace, so confirm the exact name first.<\/li>\n\n\n\n<li>For a password change, have a strong new password ready.<\/li>\n\n\n\n<li>Deletion is destructive with no undo. If the contractor uploaded files you still need, retrieve them first &#8211; deletion leaves the files but removes the login you&#8217;d use to reach them over FTP.<\/li>\n\n\n\n<li>To pause access temporarily, change the password rather than deleting.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step-by-step<\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Open SPanel and go to the <strong>FTP Accounts<\/strong> section. Find the row for the sub-user you want to change or remove &#8211; here, the sub-user created in the create-sub-user article.<\/li>\n\n\n\n<li>To change the password, open that row&#8217;s Actions menu. You&#8217;ll see <strong>Change password<\/strong> and <strong>Connect an FTP client<\/strong>.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/01-row-actions-1024x640.webp\" alt=\"How to Change or Delete an FTP Sub-User in SPanel, Step-by-step\" class=\"wp-image-6069\" srcset=\"https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/01-row-actions-1024x640.webp 1024w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/01-row-actions-300x188.webp 300w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/01-row-actions-768x480.webp 768w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/01-row-actions.webp 1440w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>Choose <strong>Change password<\/strong>. SPanel opens a dialog. Enter the new password and save. The dialog closes and the change is confirmed; the new password is required on the very next connection.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/02-change-password-1024x640.webp\" alt=\"How to Change or Delete an FTP Sub-User in SPanel, Step-by-step 2\" class=\"wp-image-6070\" srcset=\"https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/02-change-password-1024x640.webp 1024w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/02-change-password-300x188.webp 300w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/02-change-password-768x480.webp 768w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/02-change-password.webp 1440w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>To remove the sub-user instead, return to the FTP Accounts list.\u00a0<br>Safety check first: confirm the right row, since deletion can&#8217;t be undone. Tick the account&#8217;s checkbox, then click <strong>Delete Selected<\/strong>. SPanel asks you to confirm. <strong>Approve<\/strong> the prompt, and the sub-user is removed and can no longer log in.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/03-delete-confirm-1024x640.webp\" alt=\"How to Change or Delete an FTP Sub-User in SPanel, Step-by-step 3\" class=\"wp-image-6071\" srcset=\"https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/03-delete-confirm-1024x640.webp 1024w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/03-delete-confirm-300x188.webp 300w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/03-delete-confirm-768x480.webp 768w, https:\/\/www.scalahosting.com\/kb\/wp-content\/uploads\/2026\/07\/03-delete-confirm.webp 1440w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What happens behind the scenes<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Each FTP sub-user is a self-contained login tied to a home directory on the server. Changing the password updates only that login&#8217;s credential, which is why your main account and other sub-users are unaffected and the change is live right away. Deleting the account removes the login record but leaves the home directory in place &#8211; the server treats your files as separate from the credential that reached them, so removing access never destroys data.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Limitations and edge cases<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Deleting the sub-user removes its login but does not delete the files in its home directory<\/strong>. Revoking access and cleaning up storage are separate tasks. If you need the files gone, remove them through File Manager or another login afterward.<\/li>\n\n\n\n<li><strong>You cannot rename a sub-user<\/strong>. There&#8217;s no edit-name action in the Actions menu. To get a different name, delete the account and create a new one.<\/li>\n\n\n\n<li><strong>The <\/strong><strong>&lt;account>_&lt;subuser><\/strong><strong> namespace format still applies to any recreated user<\/strong>. A new sub-user is still prefixed with your account name, so plan the suffix and give the contractor the full namespaced login.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Troubleshooting<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table is-style-regular green-rows\"><table class=\"has-fixed-layout\"><tbody><tr><td>Symptom<\/td><td>Likely cause<\/td><td>What to do<\/td><\/tr><tr><td>Contractor still connects after you changed the password<\/td><td>They saved the old password in their FTP client<\/td><td>The new password applies on the next connection; have them update the saved credential, or delete the account to fully revoke.<\/td><\/tr><tr><td>Can&#8217;t find a Rename action<\/td><td>SPanel has no rename for FTP sub-users<\/td><td>Delete the sub-user and recreate it with the new name.<\/td><\/tr><tr><td>Files remain after deleting the sub-user<\/td><td>Deletion removes the login, not the home directory<\/td><td>Remove the files separately through File Manager or another login.<\/td><\/tr><tr><td>Wrong account selected for deletion<\/td><td>Similar namespaced names in the list<\/td><td>Cancel the confirmation prompt, re-check the &lt;account>_&lt;subuser> name, then proceed.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>When to use this \/ when not to use this<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table is-style-regular green-rows\"><table class=\"has-fixed-layout\"><tbody><tr><td>Use this when<\/td><td>Skip or use something else when<\/td><\/tr><tr><td>A contractor&#8217;s job ended and you want their access gone<\/td><td>You only need to pause access briefly &#8211; change the password instead<\/td><\/tr><tr><td>You suspect a sub-user&#8217;s password leaked<\/td><td>You want to free the storage too &#8211; delete, then clean up separately<\/td><\/tr><tr><td>You&#8217;re doing a routine credential rotation<\/td><td>You want a different username &#8211; delete and recreate, since there&#8217;s no rename<\/td><\/tr><tr><td>You need to revoke one login without touching your main account<\/td><td>You want to change your own main account FTP password<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>FAQ<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Q:<\/strong> <strong>Does changing the password disconnect an active session?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>A:<\/strong> It changes the credential required for the next connection. An open session may continue until it ends; to be certain access is cut, delete the sub-user.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Q:<\/strong> <strong>Will deleting the sub-user delete its files?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>A:<\/strong> No. Deletion removes the login only; the files in its home directory stay in place, so remove them separately if needed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Q:<\/strong> <strong>Can I rename an FTP sub-user?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>A:<\/strong> No. There&#8217;s no rename action. Delete the sub-user and create a new one with the name you want.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Q:<\/strong> <strong>How fast does a new password take effect?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>A:<\/strong> Immediately. The next connection requires the new password; the old one stops working as soon as you save.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Q:<\/strong> <strong>Does changing a sub-user&#8217;s password affect my main account login?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>A:<\/strong> No. Each sub-user is a separate login, so the change is scoped to that account and doesn&#8217;t touch your main credentials.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Q:<\/strong> <strong>Can I recover a deleted sub-user?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>A:<\/strong> Not directly &#8211; there&#8217;s no undo action. You&#8217;d recreate it, and the recreated login still follows the &lt;account>_&lt;subuser> namespace format. To pause access without losing the account, change the password instead.<\/p>\n\n\n\n<script type=\"application\/ld+json\">\n    {\n      \"@context\": \"https:\/\/schema.org\",\n      \"@type\": \"FAQPage\",\n      \"mainEntity\": [{\n        \"@type\": \"Question\",\n        \"name\": \"Does changing the password disconnect an active session?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"It changes the credential required for the next connection. An open session may continue until it ends; to be certain access is cut, delete the sub-user.\"\n        }\n      }, {\n        \"@type\": \"Question\",\n        \"name\": \"Will deleting the sub-user delete its files?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"No. Deletion removes the login only; the files in its home directory stay in place, so remove them separately if needed.\"\n        }\n      },{\n        \"@type\": \"Question\",\n        \"name\": \"Can I rename an FTP sub-user?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"No. There's no rename action. Delete the sub-user and create a new one with the name you want.\"\n        }\n      },{\n        \"@type\": \"Question\",\n        \"name\": \"How fast does a new password take effect?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"Immediately. The next connection requires the new password; the old one stops working as soon as you save.\"\n        }\n      },{\n        \"@type\": \"Question\",\n        \"name\": \"Does changing a sub-user's password affect my main account login?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"No. Each sub-user is a separate login, so the change is scoped to that account and doesn't touch your main credentials.\"\n        }\n      },{\n        \"@type\": \"Question\",\n        \"name\": \"Can I recover a deleted sub-user?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"Not directly - there's no undo action. You'd recreate it, and the recreated login still follows the <account>_<subuser> namespace format. To pause access without losing the account, change the password instead.\"\n        }\n      }]\n    }\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>In SPanel, you manage an FTP sub-user from the FTP Accounts page. To rotate a password, open the row&#8217;s Actions menu and choose Change password. To remove access, tick the account&#8217;s checkbox and click Delete Selected, then confirm.&nbsp; Note up front: deleting the sub-user removes its login but leaves the files in its home directory [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_seopress_titles_title":"How to Change or Delete an FTP Sub-User in SPanel | ScalaHosting KB","_seopress_titles_desc":"Learn how to modify or remove an FTP sub-user in SPanel. Follow this step-by-step guide to update FTP credentials, manage permissions, or delete unused FTP accounts securely.","_seopress_robots_index":"","_seopress_robots_follow":"","_seopress_robots_imageindex":"","_seopress_robots_snippet":"","_seopress_robots_primary_cat":"","_seopress_robots_breadcrumbs":"","_seopress_robots_freeze_modified_date":"","_seopress_robots_custom_modified_date":"","_seopress_robots_canonical":"","_seopress_social_fb_title":"","_seopress_social_fb_desc":"","_seopress_social_fb_img":"","_seopress_social_fb_img_attachment_id":0,"_seopress_social_fb_img_width":0,"_seopress_social_fb_img_height":0,"_seopress_social_twitter_title":"","_seopress_social_twitter_desc":"","_seopress_social_twitter_img":"","_seopress_social_twitter_img_attachment_id":0,"_seopress_social_twitter_img_width":0,"_seopress_social_twitter_img_height":0,"_seopress_redirections_value":"","_seopress_redirections_enabled":"","_seopress_redirections_enabled_regex":"","_seopress_redirections_logged_status":"","_seopress_redirections_param":"","_seopress_redirections_type":0,"_seopress_analysis_target_kw":"","_seopress_news_disabled":"","_seopress_video_disabled":"","_seopress_video":[],"_seopress_pro_schemas_manual":[],"_seopress_pro_rich_snippets_disable_all":"","_seopress_pro_rich_snippets_disable":[],"_seopress_pro_schemas":[],"footnotes":""},"categories":[66],"tags":[],"class_list":["post-6068","post","type-post","status-publish","format-standard","hentry","category-tutorials"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/posts\/6068","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/comments?post=6068"}],"version-history":[{"count":1,"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/posts\/6068\/revisions"}],"predecessor-version":[{"id":6072,"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/posts\/6068\/revisions\/6072"}],"wp:attachment":[{"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/media?parent=6068"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/categories?post=6068"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.scalahosting.com\/kb\/wp-json\/wp\/v2\/tags?post=6068"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}