HomeGuidesAPI ReferenceChangelog
Log In
Guides

Step 3: Baseline Electricity Usage

Create an electricity usage profile from historical bill data so the Forecasting Savings workflow has baseline consumption inputs.

Create an electricity usage profile from historical bill data so the Forecasting Savings workflow has baseline consumption inputs.

In this step, you’ll collect current and historical electricity usage information for the customer. This information is stored in an account’s usage profile, called a profile in this guide.

Baseline usage workflow

  1. Collect bill start and end dates.
  2. Record kWh consumption for each bill period.
  3. Create an electricity profile with serviceTypes=ELECTRICITY.
  4. Set sourceId=ReadingEntry.
  5. Add each bill as an entry in readingData.
  6. Confirm the response includes readingDataSummaries.

What is a profile?

Profiles store usage and other quantity data. Consumption and demand values from bills or interval meters can be stored in profiles. Modeled data and normalized energy profiles can also be stored here.

An Account object can have several profiles. Like accounts, each Profile object has a unique Arcadia-generated ID called the profileId, as well as an optional, recommended providerProfileId that you can pass in and keep unique across your accounts.

Each profile also has:

  • A service type that denotes what service the profile is for, such as ELECTRICITY or SOLAR_PV.
  • A source, which denotes where the data came from and what type of data it contains, such as meter data, bills, usage data, or modeled solar data.
  • Zero or more properties that describe other details about the profile.
  • A series of usage-related data values that denote quantities of electricity usage or solar production in the form of Readings or a Baseline.

Profiles are flexible. Once you have completed this tutorial, review what you can set on a profile in the Profile API Reference page.

Create an electricity profile for historical bills

You can use an electricity profile to store a customer's historical usage data. Most of the time, this data comes from one or more utility bills that you've collected from your prospect. In this tutorial, assume that you have three bills from the homeowner:

  • January 1 - February 1: 597 kWh
  • February 1 - March 1: 521 kWh
  • March 1 - April 1: 572 kWh

Use the bill period start date as fromDateTime and the next bill period start date as toDateTime. Keep periods contiguous when possible so there are no gaps or overlaps in baseline usage. Take care not to introduce "unknown" periods with a quantityValue of 0, as this can have negative impacts when profiles interact with the Intelligent Baseline feature. If you don't have data for a period, omit it from the readings entirely.

To create an electricity profile and include these three bills' usage data in it, you'll use the Profiles endpoint:

PUT /rest/v1/profiles
{
  "providerAccountId": "forecast-savings-example",  
  "providerProfileId": "forecast-savings-example-bills",  
  "profileName": "Electricity Bills",  
  "description": "3 Past Electricity Bills provided by homeowner",  
  "isDefault": true,  
  "serviceTypes": "ELECTRICITY",  
  "sourceId": "ReadingEntry",  
  "readingData": [  
      { "fromDateTime": "2015-01-01",  
        "toDateTime": "2015-02-01",  
        "quantityUnit": "kWh",  
        "quantityValue": "597"  
      },  
      { "fromDateTime": "2015-02-01",  
        "toDateTime": "2015-03-01",  
        "quantityUnit": "kWh",  
        "quantityValue": "521"  
      },  
      { "fromDateTime": "2015-03-01",  
        "toDateTime": "2015-04-01",  
        "quantityUnit": "kWh",  
        "quantityValue": "572"  
      }  
    ]  
}
FieldPurpose
providerAccountIdAssociates the profile with the account created in Step 1.
providerProfileIdYour stable identifier for this profile.
profileNameHuman-readable name for the profile.
isDefaultMarks this as the default electricity profile for the account.
serviceTypesIdentifies the service as ELECTRICITY.
sourceIdIdentifies the source as entered readings.
readingData[]Contains each bill period’s usage value.

The response includes the created profile:

{  
    "status": "success",  
    "count": 1,  
    "type": "UsageProfile",  
    "results": [  
        {  
            "profileId": "599cd2544e2822336ba3535a",  
            "providerProfileId": "forecast-savings-example-bills",  
            "profileName": "Electricity Bills",  
            "accountId": "066c9738-5d46-4f62-ac25-f0c3c1e6fb9b",  
            "description": "3 Past Electricity Bills provided by homeowner",  
            "serviceTypes": "ELECTRICITY",  
            "source": {  
                "sourceId": "ReadingEntry",  
                "name": "Readings",  
                "type": "Reading",  
                "sourceVersion": null  
            },  
            "isDefault": true,  
            "dataStatus": 2,  
            "properties": null,  
            "readingDataSummaries": [  
                {  
                    "quantityUnit": "kWh",  
                    "fromDateTime": "2015-01-01T00:00:00+00:00",  
                    "toDateTime": "2015-03-31T23:00:00+00:00",  
                    "numberOfReadings": 3  
                }  
            ],  
            "baselineMeasures": null  
        }  
    ]  
}

A successful response includes status: "success" and a readingDataSummaries[] entry with numberOfReadings: 3.

Summary

You've now created an account, confirmed your customer's utility and rate plan, and created a profile that contains electricity usage from the bills you collected.

Next, model a solar system for this home.


What’s Next

Go to Step 4 and create your solar Profile or run a Savings Analysis using our typicals.