What is JSON to BigQuery Schema Generator?
Google BigQuery requires explicit schema definitions when creating tables. This tool generates BigQuery schema from your JSON data, automatically inferring types, detecting nested objects as RECORD, arrays as REPEATED, and producing either a schema JSON array or a DDL CREATE TABLE statement.
How to Use
- Set the table name and choose output format (Schema JSON or DDL)
- Configure required strategy and optional snake_case conversion
- Paste your JSON data into the input area
- Click "Generate BigQuery Schema" to create the schema
- Copy the output and use it in your BigQuery console or Terraform config
Why Use This Tool?
Tips & Best Practices
- Use realistic sample data — type inference depends on actual values
- Null values produce NULLABLE mode fields
- Enable snake_case to follow BigQuery naming conventions
- The DDL output can be used directly in the BigQuery console
- Add partitioning on a TIMESTAMP or DATE column for better query performance
Frequently Asked Questions
What is a BigQuery schema?
A BigQuery schema defines the structure of a table in Google BigQuery, including column names, data types (STRING, INT64, FLOAT64, BOOL, TIMESTAMP, DATE, RECORD), and modes (NULLABLE, REQUIRED, REPEATED).
How does JSON map to BigQuery types?
JSON strings map to STRING, integers to INT64, floats to FLOAT64, booleans to BOOL, ISO date strings to TIMESTAMP or DATE, null values produce NULLABLE mode, arrays produce REPEATED mode, and nested objects produce RECORD type with nested fields.
What is RECORD and REPEATED in BigQuery?
RECORD is a complex type that represents a nested object structure with its own sub-fields. REPEATED means a field can contain an array of values, similar to an array type in other databases. A field can be both RECORD and REPEATED (array of objects).
Does this tool send my data to a server?
No, all processing happens entirely in your browser. Your JSON data never leaves your device, ensuring complete privacy.