Any way to push an iOS home screen layout while allowing user changes?


Hi, folks. I'm trying to create a default home screen layout for iPads, to be applied during enrollment. These are single-user iPads and the general goal is to provide sensible defaults without locking anything down.

Unfortunately, the "Home Screen Layout" configuration profile payload locks down the home screen (and dock) completely so the user cannot make any modifications. They can't even move the apps they download from the app store on their own. This would make sense if we were providing these iPads as kiosks for multiple users, but it makes no sense for single-user devices.

Is there any way to set a default without locking out user changes? I tried applying and then removing the profile, but when I remove it, the home screen reverts to the default state.

According to Apple’s documentation (, “On iOS, this layout is locked and can't be modified by the user.” So I realize this is expected behavior. I'm just hoping someone has a clever workaround. Short of submitting a feature request to Apple, I'm out of ideas.


Valued Contributor II

I agree it would be nice to be able to group apps for the user automatically (like create a folder for Microsoft Apps). Unfortunately, as Apple's documentation shows, there is known way. Apple's philosophy is to give the the user as much autonomy on their device as possible. Typically the home screen layout is used in conjunction with a static group of apps to provide users a consistent experience. It does not work well with having an unknown set of apps. In this case, I would recommend that you just let the users modify their own home screen.

New Contributor

Did you try creating a Smart group instead? and uploading the picture?

Valued Contributor

What do you mean by Smart group and upload a picture.

Is this from Jamf School?

It's my understanding in Jamf Pro you have to create the folder and app names manually

New Contributor

This is frustrating. I want to be able to set up a temporary screen layout for when the devices are intially configured or reset. Then allow the user to modify it as they want going forward. This can be achieved if you set up the devices using Apple Configurator where the screen layout is a one-time snapshot but then is not enforced on-going. This would be an ideal setting in my opinion.

Valued Contributor

I wonder if it would be possible to create a smart group for:
Criteria Last Enrollment
Operator less than x days ago
Value 1

and fine tune it with other smart groups or PreStage info

then create the Configuration Profile with payload of Home Screen Layout

One would need to test this and find out if once a device falls out of scope (enrolled date) will it still keep the custom app layout preset or will all the apps go back to their happy default / random place.

Contributor II

I tested something like this before (but manually removing the device from scope) and sadly it seemed to just jump back to the random distribution. Worth trying again as I've seen different behaviours on different versions of iOS so it may have changed since I last tested (probably back at iOS 12).

And I agree - the inability to specify a one time setting is a HUGE failing in Configuration Profiles, both on iOS and MacOS. In many cases it actually makes the Configuration Profiles completely useless.

I wrote a script for initial iPad setup that uses the cfgutil command to load the homelayout file much like Configurator would do it, but it means you have to plug in and touch every iPad before sending it out. I use the script to also setup user customized WiFi profiles and generate a Lock Screen with user name and Barcode embedded, so there's actually some value for us touching the devices, but doesn't seem worth the effort just for the icon layout.

New Contributor

No, removing the payload/configuration profile just results in everything reverting to some "unknown". It does not "leave it where it is" until someone changes it. Ideally, that would be the best scenario.

I think I have a FR to allow a layout as a template.

set it, then allow user to mod:

but I don’t think this is in the MDM spec.