Skip to content

LINE Campaign Reporting

Engage Studio does not have a built-in reporting UI for LINE campaigns. To analyze delivery results and engagement metrics, use the LINE OA Insights Import Integration to import aggregate stats from LINE into Treasure Data, then analyze the data using Treasure Insights or Treasure Data's AI capabilities.


How LINE Reporting Works

LINE does not expose individual open or click events through its Webhook or Messaging API. Instead, LINE provides aggregate statistics per message broadcast through its Insights API. The LINE OA Insights connector imports these stats into Treasure Data, where they can be queried and visualized.

LINE Messaging API
(Insights endpoint)

LINE OA Insights Import Connector
(Integration Hub → Treasure Data)

TD Database Table

Treasure Insights / AI Analysis

LINE Messaging API
(Insights endpoint)

LINE OA Insights Import Connector
(Integration Hub → Treasure Data)

TD Database Table

Treasure Insights / AI Analysis


LINE OA Insights Import Connector

The LINE OA Insights Import Integration imports four types of data from your LINE Official Account into Treasure Data. Set up a recurring import to keep your data current.

LINE OA Insights Import Integration source configuration

Available Data Targets

TargetDescription
Message DeliveriesPer-broadcast statistics including delivery count, open count, and click count
FollowersDaily follower count and blocking count
DemographicsFollower demographic breakdown (age, gender, region, etc.)
User Interaction StatisticsPer-message interaction stats using LINE's request ID

For campaign reporting, the primary target is Message Deliveries.

Setting Up the Connector

Step 1: Create Authentication

  1. In Treasure Data, go to Integration Hub > Catalog.
  2. Search for and select LINE OA Insights.
  3. Click Create Authentication.
  4. Enter your Channel Access Token (obtain from LINE Developers Console > Messaging API tab > Channel access token (long-lived)).
  5. Enter a name for the connection and click Done.

Step 2: Configure a Data Source

  1. From the Authentications list, find the connection you created and click New Source.

  2. Enter a name for the source.

  3. Configure the source table parameters:

    ParameterRequiredDescription
    TargetYesSelect Message Deliveries for campaign stats
    Start DateYesStart date in yyyyMMdd format (e.g., 20260101)
    End DateNoEnd date in yyyyMMdd format. Defaults to today if not specified
    IncrementalNoWhen enabled, imports only new data since the last successful run
    Request IDsRequired for User Interaction StatisticsComma-separated LINE request IDs
  4. Select the destination database and table, and set a schedule (daily is recommended).

  5. Click Create & Run Now.

Scheduling Recommendation

Set the import to run daily (e.g., @daily or 10 0 * * *) with Incremental enabled. LINE's Insights API has a rate limit of 60 requests per hour, and aggregate stats for a given day typically become available with a 1–3 day delay after broadcast.

Import via Treasure Workflow

You can also configure the import in a Treasure Workflow .dig file:

_export:
  td:
    database: line_oa_reporting
    table: message_deliveries
+import_line_oa_insights:
  td_load>: imports/line_oa_insights.yml
  database: ${td.database}
  table: ${td.table}

imports/line_oa_insights.yml:

in:
  type: line_oa_insights
  channel_access_token: {your_channel_access_token}
  target: message_deliveries
  start_date: 20260101
  incremental: true
out:
  mode: append

See LINE OA Insights Import Integration for full parameter reference and CLI usage.


Message Delivery Metrics

The message_deliveries target imports the following per-broadcast metrics. These are aggregate counts for all recipients of a given LINE broadcast.

MetricDescription
DeliveredNumber of messages successfully delivered to recipients
OpensNumber of recipients who opened the message
ClicksNumber of recipients who clicked a link in the message
Open RateOpens ÷ Delivered × 100%
Click RateClicks ÷ Delivered × 100%
Aggregate Metrics Only

LINE's Insights API provides aggregate statistics per broadcast, not per-user event logs. Individual-level open and click events are not available. If you need URL-level click data, configure UTM parameters in your campaign and analyze traffic in your web analytics platform.


Analyzing Data with Treasure Insights and AI

Once LINE OA Insights data is imported into Treasure Data, use the following tools to analyze and visualize campaign performance:

  • Treasure Insights — Build dashboards and charts to visualize delivery metrics, open rates, and follower trends over time
  • AI Agent Foundry — Ask natural language questions about your campaign data and generate ad-hoc analysis without writing SQL

For setup and usage of these tools, refer to the Treasure Insights documentation.


Other Insight Data

In addition to Message Deliveries, the LINE OA Insights connector can import the following data:

Followers

Daily follower and blocking counts. Useful for tracking audience growth over time.

in:
  type: line_oa_insights
  channel_access_token: {your_channel_access_token}
  target: followers
  start_date: 20260101
  incremental: true

Demographics

Follower demographic breakdown (age group, gender, region, OS, etc.). Useful for audience analysis and campaign targeting strategy.

in:
  type: line_oa_insights
  channel_access_token: {your_channel_access_token}
  target: demographics

User Interaction Statistics

Per-message interaction stats fetched by LINE request ID.

in:
  type: line_oa_insights
  channel_access_token: {your_channel_access_token}
  target: user_interaction_statistics
  request_ids: "req_id_1,req_id_2"

Delivery Log

The Delivery Log database (delivery_line_{system_identifier}) records per-profile delivery events written at send time. This is separate from the LINE Insights data and is used for:

  • Tracking delivery success and failure at the individual profile level
  • Diagnosing delivery errors per profile

Key delivery log columns:

ColumnDescription
eventdelivery or error
timeUnix timestamp
channel_typeAlways LINE
campaign_idEngage Studio campaign ID
line_channel_nameLINE Sender Account name
message_typetextV2, imagemap
statussuccess or failed
error_codeLINE API error code (error events only)