Looker Basics

What Is LookML? A Plain-English Guide for Data Analysts

Updated March 27, 2026·8 min read

LookML is the modeling language Looker uses to define how data from a database should be structured, named, and queried. It stands for Looker Modeling Language. Every field that appears in Looker's Explore interface — every dimension a user can group by, every measure they can sum or count — is defined in LookML. Without LookML, Looker would just be a connection to a database with no understanding of what the data means.

How Does LookML Fit Between a Database and a Looker Dashboard?

Database (BigQuery, Snowflake) LookML Model + View Files Looker Explores (Query Interface) Dashboards + Looks

When a user runs a query in a Looker Explore, they are not writing SQL directly. Instead, Looker reads the LookML model for that Explore, translates the user's field selections and filters into SQL, sends that SQL to the connected database, receives the results, and displays them. LookML is the translation layer between a raw database schema and the business-friendly field names and calculations that end users see.

What Are the Main LookML File Types?

A LookML project contains two primary file types: model files and view files. View files (with the extension .view.lkml) define the fields — dimensions and measures — that correspond to a database table or derived query. A model file (with the extension .model.lkml) defines which Explores are available to users and how views join together within those Explores. The model file is the entry point; the view files are where the detailed field definitions live.

Advertisement

A Minimal LookML View File With Annotations

view: orders {
  # sql_table_name tells Looker which database table this view represents
  sql_table_name: "ecommerce"."orders" ;;

  # A dimension appears as a groupable field in Explores
  dimension: order_id {
    type: number
    primary_key: yes
    sql: ${TABLE}.order_id ;;
    description: "Unique identifier for each order"
  }

  # A string dimension for displaying order status
  dimension: status {
    type: string
    sql: ${TABLE}.status ;;
    label: "Order Status"
  }

  # A measure aggregates data — this counts distinct orders
  measure: order_count {
    type: count_distinct
    sql: ${TABLE}.order_id ;;
    label: "Number of Orders"
  }

  # A measure that sums a numeric column
  measure: total_revenue {
    type: sum
    sql: ${TABLE}.revenue ;;
    label: "Total Revenue"
    value_format_name: usd
  }
}

Every field in a view follows the same basic structure: a field type declaration (dimension or measure), a type parameter specifying the data type or aggregation method, a sql parameter specifying what SQL expression to use, and optional parameters like label and description to control how the field appears in the UI.

How LookML Differs From SQL

LookML is not SQL. It is a declarative language that sits above SQL. When you write LookML, you are defining rules for how Looker should generate SQL — you are not writing the SQL queries themselves. This means a well-written LookML model can power hundreds of different SQL queries depending on what the user selects in the Explore interface, without any of those queries being written in advance.

This is the core architectural difference between Looker and tools like Tableau or Power BI. In those tools, a developer typically builds a specific dashboard with specific hardcoded queries. In Looker, a developer writes a LookML model that allows users to explore the data themselves, with Looker generating correct SQL on the fly based on the model's rules.

What Exam Candidates Most Often Get Wrong About LookML

The exam expects you to understand LookML at a conceptual level, not to write complex models from memory. But candidates who have only used Looker as end users commonly miss the following: first, the difference between what is defined in a view file versus a model file (views contain fields; models contain Explores and joins). Second, that ${TABLE} in a dimension's sql parameter is a LookML substitution for the sql_table_name — not a variable you define yourself. Third, that the type parameter means different things for dimensions (data type: number, string, time) versus measures (aggregation type: count, sum, average).

The LookML basics guide and the dimensions vs measures deep dive cover these distinctions in detail. For hands-on practice building and testing LookML concepts, the Looker Cert Prep PDF guide includes worked examples for every LookML concept the exam tests.

Looker certification details verified against Google Cloud certification pages as of March 2026. Exam format, fees, passing scores, and domain weights are subject to change — confirm current details at cloud.google.com/certification before registering.

Prepare Faster With the Right Resources

The Looker Certified Explorer exam tests more than button-clicking — it requires a working understanding of LookML structure, Explore behavior, dimension and measure logic, and how Looker connects to your data warehouse. The Looker Cert Prep PDF Study Guide covers every exam domain in plain language: LookML syntax walkthroughs, Explore and filter mechanics, visualization rules, a domain-by-domain study checklist, and 50 practice questions with answer explanations. Use code LOOKERSTUDY50 for 50% off.

If you want to practice interactively, SimpuTech's Looker AI tutor can walk through LookML scenarios, quiz you on Explore and dashboard concepts, and help you identify gaps before exam day. Available at SimpuTech.com.