0U
ZeroUpload
Data & Dev Config • Zero-Server RAM Execution

Convert JSON to Lua Table Online - Free, Local & Instant

Instant JSON (.json) to Lua Table (.lua) converter. 100% client-side processing in your browser RAM — zero file uploads, full privacy, drag & drop or paste raw text.

JSON → Lua Table ⇄ Swap (Lua Table → JSON)

Technical Comparison: JSON vs Lua Table

Data & Dev Config
Specification JSON (Source) Lua Table (Target)
Full Specification JavaScript Object Notation Lua / Roblox Luau Native Table Literal
File Extension & MIME .json (application/json) .lua (text/x-lua)
Data Typing Model Strict (strings, numbers, booleans, arrays, objects, null) Dynamic (1-based arrays, dictionary records, booleans, numbers, nil)
Structure & Hierarchy Deeply nested trees & arrays Nested associative/array tables { key = value }
Comments Support Not supported in RFC 8259 (supported via relaxed parser) Supported (-- single line and --[[ block ]])
Primary Ecosystem REST APIs, web apps, NoSQL document stores, modern configs Roblox Studio ModuleScripts, Love2D, World of Warcraft addons, Neovim configs

JSON to Lua Table — Before & After Example

Before (JSON Input)
[
  {
    "id": 1,
    "name": "Alice Johnson",
    "email": "alice@example.com",
    "role": "admin",
    "active": true,
    "score": 98.5,
    "address": {
      "city": "Berlin",
      "country": "DE"
    }
  },
  {
    "id": 2,
    "name": "Bob Smith",
    "email": "bob@example.com",
    "role": "editor",
    "active": false,
    "score": 87,
    "address": {
      "city": "Austin",
      "country": "US"
    }
  },
  {
    "id": 3,
    "name": "Chiara Rossi",
    "email": "chiara@example.com",
    "role": "viewer",
    "active": true,
    "score": 91.25,
    "address": {
      "city": "Milan",
      "country": "IT"
    }
  }
]
After (Lua Table Output)
local data = {
  {
    id = 1,
    name = "Alice Johnson",
    email = "alice@example.com",
    role = "admin",
    active = true,
    score = 98.5,
    address = {
      city = "Berlin",
      country = "DE",
    },
  },
  {
    id = 2,
    name = "Bob Smith",
    email = "bob@example.com",
    role = "editor",
    active = false,
    score = 87,
    address = {
      city = "Austin",
      country = "US",
    },
  },
  {
    id = 3,
    name = "Chiara Rossi",
    email = "chiara@example.com",
    role = "viewer",
    active = true,
    score = 91.25,
    address = {
      city = "Milan",
      country = "IT",
    },
  },
}

return data

Frequently Asked Questions: JSON to Lua Table

How do I convert JSON to Lua Table online without uploading sensitive files? ▾

Paste your JSON data or drag and drop a .json file into the converter above. ZeroUpload parses JSON and serializes Lua Table 100% inside your browser RAM using local JavaScript—no bytes are ever sent to an external server.

How are nested objects or tabular columns mapped between JSON and Lua Table? ▾

When converting hierarchical structures (Deeply nested trees & arrays) and tabular or config formats (Nested associative/array tables { key = value }), our engine automatically flattens or unflattens dot-separated keys (such as address.city) and preserves numbers, booleans, arrays, and null values.

Is this JSON to Lua Table converter free for commercial and production config files? ▾

Yes. The tool is completely free, requires no account or API key, and works offline once loaded. Because execution happens in local memory, it is safe for proprietary JSON, database exports, and production secrets.

Can I convert Lua Table back to JSON? ▾

Yes! Click the "Swap (Lua Table → JSON)" button at the top of the workspace or use the reverse converter link at the bottom of this page for bidirectional conversion.