Skip to tool
Mobile

Apple Property List Studio

Read XML and binary property lists, inspect types, and export structured data.

Input0 characters
Result0 characters
Ready

Prefer a native workflow?

Keep Apple Property List Studio one shortcut away.

DevSexy for Mac puts the same private workflow in a focused desktop app, with global shortcuts and no browser tab to manage.

Global shortcutOffline-readyLocal processing
Try the Mac app free

This browser tool remains free.

Property-list customs office · envelopes are not value types

XML paper and bplist00 carry the same restricted type family.

A property list is a typed value tree, not “some XML.” This studio detects the envelope, inventories native Apple types, inspects Info.plist identity, and makes every JSON loss declaration explicit.

Envelope detectorLOCAL PARSER
XML<?xml …><plist>

human-readable

BINARYbplist00

compact envelope

OPENSTEPkey = value; dictionary

legacy ASCII

PARSED → ONE TYPED TREE

Typed object tree

▾Dictionary8 keys
├─CFBundleIdentifierString
├─CFBundleVersionString
├─BuildDateDate
├─IconDataData · 4.2 KB
└─ ▾SupportedPlatformsArray(2)
├─[0]String · iPhoneOS
└─[1]String · iPhoneSimulator

Info.plist field station

Identity

CFBundleIdentifier · DisplayName · Executable

Release

ShortVersionString · Version

Platform

MinimumOSVersion · SupportedPlatforms

Routing

URLTypes · QueriesSchemes

Privacy

NS…UsageDescription strings

Boundary

entitlements and signing live elsewhere

Type passport

<dict>DictionaryObjectkeys must be strings
<array>ArrayArrayordered
<integer>/<real>NSNumberNumberelement intent may collapse
<date>DateDateJSON has no native date
<data>DataUint8ArrayJSON has no bytes
<true/>/<false/>Booleanbooleansafe

JSON customs declaration

Date__plistType: date + iso8601TAGGED OBJECT
Data__plistType: data + base64TAGGED OBJECT
Integer / realJavaScript NumberORIGINAL TAG MAY BE LOST
Dictionary rootJSON objectDIRECT
Array / scalar rootvalid plist rootDO NOT WRAP

Binary / XML parity

EVIDENCEXMLBINARY
Logical valuessame typed familysame typed family
Envelopereviewable XMLbplist00 object table
Formatting outputnormalized XMLconverted to XML
Byte preservationnot promisednot promised
Encryptionnone impliedbinary is not encrypted

Native plutil handoff

$ plutil -lint Info.plist$ plutil -p Info.plist$ plutil -extract CFBundleIdentifier raw Info.plist$ plutil -type BuildDate Info.plist$ plutil -convert xml1 -o Info.xml.plist Info.plist

Run a reproducible example

Inspect a typed Info.plist dictionary and see its JSON representation using public application identifiers.

Using an example replaces the current input, reference input, operation, and options. Public demonstration data only.

Inspect bundle identity and a boolean

Use an XML plist dictionary with CFBundleIdentifier and Enabled.

Input

<?xml version="1.0"?><plist version="1.0"><dict><key>CFBundleIdentifier</key><string>com.example.demo</string><key>Enabled</key><true/></dict></plist>

The hierarchy distinguishes a string from a boolean; it does not validate signing or entitlements.

CFBundleIdentifier:
com.example.demo
Boolean

Export the dictionary to JSON

Choose To JSON on the same typed dictionary.

Input

<?xml version="1.0"?><plist version="1.0"><dict><key>CFBundleIdentifier</key><string>com.example.demo</string><key>Enabled</key><true/></dict></plist>

The identifier stays a string and Enabled becomes true. Date and Data require tagged objects when present.

"CFBundleIdentifier": "com.example.demo"
"Enabled": true

Continue with a related task

Mobile Build Artifact Inspector

Inspect IPA, APK, and AAB metadata without uploading a release build.

JSON Formatter & Validator

Format, validate, minify, inspect, and query JSON with precise syntax diagnostics.

Localization Resource Bridge

Compare and translate Apple, Android, XLIFF, and ARB localization resources.

Repeat the task in DevSexy for Mac

Use the native app for repeated offline work and direct Option shortcuts.

Direct answer

What is Apple Property List Studio?

Open XML, binary bplist00, or OpenStep property lists online, inspect a typed tree, review Info.plist fields, and export JSON with Date and Data warnings.

What can it do?

  • Format
  • Inspect
  • To JSON

How to use Apple Property List Studio

  1. 01

    Prepare the input

    Paste a property list or open a supported local plist file.

  2. 02

    Choose the operation

    Inspect its typed hierarchy or convert it to XML/JSON.

  3. 03

    Review the evidence

    Check Date, Data, and numeric precision separately; run platform validation on the real application bundle.

Frequently asked questions

Can JSON preserve every plist type directly?
No. JSON has no native Date or Data type, so the export uses tagged objects for those values. Review the contract before using it as a round-trip interchange format.
Does reading Info.plist verify an application signature?
No. A parsed bundle identifier or entitlement value is metadata. Code signing and provisioning validity require separate checks on the actual bundle.
Are large integers preserved without limit?
Do not assume that. This parser represents XML numbers as JavaScript Number; very large integers may lose precision and original integer/real XML tags are not guaranteed to survive.