The button does not appear
It is usually one of the following. Check from the top.
- Did you check on mobile? On PC the button may appear, but tapping it only shows a QR code. Check on a phone.
- Does the script load? In developer tools → Network,
PerfittSize.jsmust return 200. If it is missing, the tag was left out or is not in head. - Is the API key right? The value after
apiKey=must match the key Perfitt issued. - Is the product registered with Perfitt? The button does not appear for products with no data at Perfitt or classified as not recommendable. For a newly added product, send the product code to your Perfitt contact.
- Is the selector on the page? If
document.querySelector('#perfitt-block-1')returnsnullin the Console, the button area is missing. - Are the sync values being read? If sync items such as brand and model number cannot be read from the page, the product cannot be found. Check that the selectors in Sync methods still match the current page structure.
On PC, tapping the button only shows a QR code
This is normal. Foot measurement uses the phone camera, so on PC a QR code that hands over to the phone is shown instead of the measurement screen. Scanning it with a phone opens the measurement screen for the same product, and the result also appears on the PC screen.
A settings change is not showing
The Perfitt script and settings are cached by the CDN and the browser. After Perfitt changes a setting, open the page again a few minutes later, or check with the browser cache cleared (an incognito window). If it still does not change, tell your Perfitt contact.
The measurement result disappears on another page
Results are kept in browser storage (localStorage). In an incognito window, when the browser blocks storage, or when the iframe that holds Perfitt has a sandbox attribute that blocks storage, the result is lost on navigation. For logged-in customers, syncing customerId keeps the result on later visits too. Syncing items
The camera does not turn on
If camera permission was denied in the browser, allow it again from the permission settings in the address bar. In a WebView inside an app, the app has to pass the camera permission on. See Android camera permission for the setup and the iOS notes.
iOS shows a "Motion & Orientation Access" prompt
This is normal. iOS asks because the side-view capture uses the phone's tilt to guide the shooting angle. If you do not allow it, capture still works but the tilt guidance is off. Details
The button does not change on navigation (SPA)
An SPA does not reload the page, so the script does not run again. Call window.initializePerfittSize({ productId }) every time the product changes. SPA guide
No recommended size appears
If the button shows but you get a notice instead of a recommended size, the cause is usually on the product side.
- Is the product recommendable? Products not registered with Perfitt, or awaiting registration, can be measured but get no recommendation. If you sync
brandandmodelNo, a registration request is sent automatically; ask your contact about its status with the product code. - Are size options being read? If the selector of the size option area is wrong, sizes on sale cannot be read, so the recommendation may be empty or point to a sold-out size. Size option area
- Are the synced values right? If another product's
productIdis read, the wrong shoe is recommended. In the Console, check thatPerfittSize.productIdis the product you are viewing.
Product name or image is empty (synced values are not read)
If the product name or image is empty on the result screen, that item could not be read.
- Does the selector exist on the current page? In the Console, check that
document.querySelector('selector')finds the element. Breaking after a store redesign is the most common cause. - Is the value rendered late? For values drawn later by JavaScript, Perfitt waits up to 5 seconds. If it is later than that, pass the values yourself in manual mode.
- Is the reading method right? In Sync methods you can switch that item to a method that fits (JSON-LD, JavaScript variable, etc.).
The button colors do not change
After Perfitt changes the setting it can take a few minutes because of CDN and browser caches. Open the page again in an incognito window; if it is still unchanged, tell your contact along with the color codes you requested.
I signed in but my earlier measurement does not show
To reuse an earlier measurement, customerId must be synced and the customer must have been signed in when measuring. Without customerId, results do not carry over to another device or browser. Synced items
If the steps above do not solve it, send the page URL, the device and browser, and the steps to reproduce.