Can't RESET Profile picture to Default

Visual Aids:

Old Menu:
image

New menu provides no “Rervert/Default” Option, leaving my profile look awful.

Expected behavior

A “reset to Default/Revert” button should appear and keep the original pose.

Temporary Fix:

Paste this into your console to change them. This only works on web.

Profile Thumbnail/Full Body
    const url = "https://avatar.roblox.com/v1/avatar/thumbnail-customization";

    // Get a fresh X-CSRF token
    const tokenResponse = await fetch(url, {
        method: "POST",
        credentials: "include"
    });

    const csrfToken = tokenResponse.headers.get("x-csrf-token");

    if (!csrfToken) {
        console.error("Couldn't obtain X-CSRF-TOKEN.");
        return;
    }

    console.log("Got X-CSRF-TOKEN. Resetting thumbnails...");

    for (const thumbnailType of [1, 2]) {
        const response = await fetch(url, {
            method: "POST",
            credentials: "include",
            headers: {
                "Content-Type": "application/json",
                "X-CSRF-TOKEN": csrfToken
            },
            body: JSON.stringify({
                thumbnailType: thumbnailType,
                emoteAssetId: 0,
                camera: {
                    distanceScale: -1,
                    fieldOfViewDeg: 30,
                    yRotDeg: 0
                }
            })
        });

        console.log(
            thumbnailType === 1 ? "Closeup:" : "FullBody:",
            response.status,
            await response.text()
        );
    }
})();
Profile Icon/Close Up
    const url = "https://avatar.roblox.com/v1/avatar/thumbnail-customization";

    // Get X-CSRF token
    const tokenResponse = await fetch(url, {
        method: "POST",
        credentials: "include"
    });

    const csrfToken = tokenResponse.headers.get("x-csrf-token");

    if (!csrfToken) {
        console.error("Couldn't obtain X-CSRF-TOKEN.");
        return;
    }

    // Reset ONLY the Closeup thumbnail
    const response = await fetch(url, {
        method: "POST",
        credentials: "include",
        headers: {
            "Content-Type": "application/json",
            "X-CSRF-TOKEN": csrfToken
        },
        body: JSON.stringify({
            thumbnailType: 1,
            emoteAssetId: 0,
            camera: {
                distanceScale: 1.7,
                fieldOfViewDeg: 30,
                yRotDeg: -15
            }
        })
    });

    console.log(
        "Closeup:",
        response.status,
        await response.text()
    );
})();
26 Likes

It doesnt work i tried it… Error Console: “Uncaught SyntaxError: Illegal return statement” :frowning:

4 Likes

Wanted to change my profile frame today and now I’m realizing that my profile picture has been left looking absolutely terrible. I really hope that they fix this soon :confused:

Seems like it hasn’t updated on here yet so they’re really twisting the knife in the wound :broken_heart:

Try using the web commands I sent for now. I’m hoping staff can address this issue and fix it

2 Likes

Those errored for me unfortunately

1 Like
$.ajax({
  method: "POST",
  url: "https://avatar.roblox.com/v1/avatar/thumbnail-customization",
  contentType: "application/json",
  data: JSON.stringify({
    "camera": {
        "distanceScale": -1,
        "fieldOfViewDeg": 30, 
        "yRotDeg": 0
    },
    "emoteAssetId": 0, 
    "thumbnailType": 1

  })
}).then(data => console.log(data)).fail(error => alert(error.responseJSON.errors[0].message));
// Logs `{success:true}` if success or website alert if error.

thumbnailType 1 and 2

12 Likes

Yoooo, thanks bro, It worked! (4 oct, 2026)

Thanks for the report! We’re tracking a similar request in this thread:

1 Like