Common Online Data Analysis Platform (CODAP)

CODAPData are everywhere! CODAP provides an easy-to-use web-based data analysis platform, geared toward middle and high school students, and aimed at teachers and curriculum developers. CODAP can be incorporated across the curriculum to help students summarize, visualize and interpret data, advancing their skills to use data as evidence to support a claim. Just as language and numeric literacy involve understanding the world through words and mathematical constructs, data literacy involves understanding the world through data exploration. Today’s middle and high school students need to work with data in order to advance their skills and prepare for the burgeoning careers and inquiry-based practices of data scientists.
Read more »

See members of the Common Online Data Analysis Platform (CODAP) project discuss highlights from the Data Science Education Technology conference. The conference convened 100 researchers, curriculum developers, and software developers to build a community and identify innovative tools and approaches for integrating data science into the K-12 classroom.
Watch Now

Through research on learning, collaborative software design, web application development and user testing, we’re developing a Common Online Data Analysis Platform (CODAP) that will serve subsequent curriculum development projects as a basis for the technology with which students engage with data.

CODAP is open source software, free to use, adapt and extend.To increase the likelihood that CODAP software will meet the needs of a wide range of curriculum projects it is being designed and tested in collaboration with four existing NSF-funded projects: Building Models, Data Science Games, InquirySpace, Ocean Tracks, and Terra Populus. These projects form the nucleus of a community of developers that will grow with time and lead to widespread use of CODAP’s data exploration and visualization tools in middle and high school classrooms across a variety of subject areas.

Principal Investigators

William Finzer
Dan Damelin

Project Inquiries

Share This

National Science Foundation (NSF) Logo

This material is based upon work supported by the National Science Foundation under Grant No. DRL-1435470. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.

Research on learners’ conceptions of data has not kept pace with the increasing importance of data fluency in students’ education. CODAP is adding to our foundational knowledge in this area by improving our understanding of how learners conceive of and work with empirical data that is structured hierarchically. The two graphs illustrate such a hierarchical structure in the context of multiple runs of a forest fire simulation. In the left-hand graph each point represents one simulation while in the right-hand graph each point is a measurement of the percent of the forest burned at a given time. These are, respectively, the upper and lower levels of a hierarchy.

This way of thinking about data is fundamental and ubiquitous in science and engineering. Yet how students come to understand the underlying data structure has yet to be researched, and thus there is a lack of empirical evidence to guide design of software interfaces to facilitate its understanding.

CODAP is researching the ways students perceive and learn to work with this type of data. Our goals are to add to the field of data science education and to improve the design of data analysis learning environments. Research is being conducted in classroom tests of curricular units using data contexts from within each project. A series of qualitative studies using cognitive interviews with middle and high school students will take place in the first two years of the project, a pilot study in a summer class in year 2, and a larger, confirmatory study during a field test in year 3. We hypothesize that user interface design of the representation of hierarchical data structures is strongly tied to the ability of learners to track levels of empirical data. Read more »

In STEM education it’s essential to engage students in undertaking their own projects. But data exploration is often a neglected aspect of student project work. Students must look for patterns in the raw data, identify possible errors and plan further experiments. They also need to add, combine and remove data; transform the data; match datasets to idealized curves and more. The Common Online Data Analysis Platform (CODAP) helps students explore their data. Designed to run in a web browser, CODAP is an easy-to-use, open source data exploration environment.

Getting Data into CODAP is easy. Just drag a text file into the data exploration environment or embed a simulation or game that generates data directly into CODAP. CODAP runs in HTML5 and JavaScript. You can import data or generate data using a simulation or embed an iframe into CODAP. By dropping the simulation’s URL into CODAP, as an embedded iFrame you can easily use CODAP’s graphs to explore the data. Learn more »

Students can explore data with tables, graphs and maps. They can model data with plotted functions, computations and sliders. And they can document their work directly in CODAP or by embedding CODAP’s fully interactive components in their own web pages.

Try CODAP yourself by following the links here. Click the "Guest" button to get started. While there, check out the Help Videos found in the gear menu on the toolbar, which showcase some of the many CODAP tools in more depth.

Design Principles

Representations link dynamically across tables, graphs and maps. Click on a point in the table and it’s automatically selected in each graph, map or other representation!

CODAP is an open-ended tool for data exploration and discovery. It can be embedded in lessons in a variety of ways.

intellijThe CODAP project uses IntelliJ IDEA as part of its software development process.

Let us know if you'd like to get involved! Get in touch on the CODAP Forum or send an email to

Attending a conference this year? Look for one of our data science education meetups!

An Open Invitation to...

Curriculum Developers

Are you developing curricula that engage students with data or doing research into how students understand data and/or data visualizations? Would you like to have an online tool for working with data sets you've collected, making it easier to engage colleagues and the public? We'd love to work with you.

CODAP offers many flexible integration options for your curricula. "Data interactives" (games, simulations, database front ends, probe interfaces, and data entry forms) may be embedded in CODAP to serve as a source of data or data can be imported by simply dragging and dropping CSV or tab-delimited text files. You can use CODAP as a standalone environment or include links to CODAP documents within online curriculum materials.

Software Developers

If you're creating software for learning about or engaging with data, we invite you to leverage current work and add capabilities to the open source CODAP codebase. CODAP is HTML5, making use of JavaScript, HTML, and CSS3. Various open source libraries are part of CODAP, including SproutCore, JQuery, Raphaël, Leaflet, and several other smaller libraries.

Consider becoming part of the community:


You're welcome to use CODAP with data of your own or start with several existing curricula that make use of its data exploration capabilities, including Data Games and InquirySpace materials. They're free and ready to use in your classroom. Explore more activities at the CODAP portal, and let us know if you have ideas for other features you'd like to see.

Education Researchers

CODAP is already being used by researchers to visualize log data from online learning materials. Do you have data? CODAP can help.


We'd love for you to play with CODAP so that we can learn from you. We conduct usability and classroom tests, so if you're interested in playing with the software, let us know!

Let us know if you'd like to get involved! Get in touch on the CODAP Forum or send an email to

Our Team

The CODAP team is distributed in both expertise and geography.

Principal Investigators:
Bill Finzer, Dan Damelin
Project Manager:
Natalya St. Clair
Research Team:
Joan Heller, Nicole Wong, Cliff Konold
Senior Software Engineer:
Jonathan Sandoe
Software Tester:
Evangeline Ireland

The CODAP community currently includes four collaborating projects. CODAP relies on participation of an ever-expanding community of multiple collaborators. Contact us to explore partnership possibilities and more.

The InquirySpace project at the Concord Consortium develops digital software and curriculum that lead to scaffolded science inquiry. This project has been using CODAP’s predecessor software since 2012.

The Building Models project at the Concord Consortium is developing a systems dynamics modeling tool for secondary school students to construct dynamic models. Students will validate and iteratively refine their models by comparing outputs from their own models with data from one or more other sources, including experimental data from probes or data generated by simulations. To facilitate iterative model development, the systems dynamics tool and the external data sources will be embedded in CODAP.

The Ocean Tracks project at EDC already has online software and curriculum materials immersing high school students in an interdisciplinary study of marine biology based on GPS data from elephant seals, tuna, albatross and other large sea animals. CODAP is using this project’s experience to inform the development of map and measurement capabilities. Amy Busey, Randy Kochevar and Josephine Louie contribute to CODAP from OceanTracks.

The Terra Populus project at the Minnesota Population Center makes possible research that depends on integration of data for individual people drawn from censuses, area data that summarize demographics, environmental measures for states and environmental data gleaned from satellite photos. The collaboration with CODAP will lead to a website aimed at introducing students to this vast source of rich data. Katie Genadek and Tracy Kugler lead this project.


These shared CODAP documents will give you a sense of what is possible within CODAP. Each will open in a separate tab. Log in as a guest.

Markov Game Play Roshambo against the evil Dr. Markov. If you win, you can save Madeline the dog. Improve your odds by analyzing Markov's moves in a graph.
Parachute Model Experiment with dropping a parachute to see how changing the parachute's size and mass of its cargo changes the terminal velocity of the drop.
Four Seals Display the tracks of four elephant seals swimming in the Pacific, on a map. Make graphs and use selection to help determine what is going on.
Mammals There are 27 mammals, each with eight attributes. Which of the mammals has the longest life span? Sleeps the most? What relationships can you find?
Map Data These are data gathered from the Minnesota Population Center. It provides aggregate information for the United States. What do you notice about the education levels within each state?
CODAP Across Many Disciplines From this page you can try out many examples of CODAP graphs and tables embedded in online worksheets.
Data Games Playing computer games generates a lot of data. With Data Games and CODAP, you can learn new analytical skills to help you win!

You can load your own data into CODAP as a new document. Try it yourself. The link below will open as a separate tab. Log in as a guest, click "Create New Document," then drag a CSV, JSON, or TXT file into CODAP to explore your own data.

New Document You can create your own CODAP document by dragging and dropping a CSV, JSON, or TXT file into CODAP. You can also drag and drop a URL directly into the platform to embed a web-based simulation or game that generates data.

Log In

Don't have a profile?

Create a profile and...

Create your profile now »