← tripid.app

How Tripid measures a drive

Smartphone-only telematics, vehicle-agnostic, no OBD-II. The geeky version.

Tripid retired the single "EcoScore out of 100" in favor of a three-pillar spectrum: Style, Precision, Outcome. Style is intent. Precision is execution. Outcome is raw cost. They are measured independently on purpose, because a spirited driver with clean inputs is not the same person as a conservative driver who brakes hard.

The three pillars at a glance

Style

Signed scalar in [-1, +1] on the Eco ↔ Spirited axis. Measures driver intent, not efficiency. Built from peak acceleration, sustained cruise signatures, VSP heavy-bin residence, and eco-affirmative patterns.

Precision

Bounded scalar in [0, 1] representing kinematic smoothness. Built from ISO 2631 weighted jerk, input variance, and zero-crossing rate. Orthogonal to Style by design.

Outcome

Raw fuel, pesos, km/L. Not a score, not a grade. The peso number is the only one that actually reaches your wallet.


Why a spectrum, not a score

A single 0 to 100 score frames every deviation from perfect thermodynamic efficiency as failure. In the academic literature this has four well-known problems:

The three-pillar spectrum separates intent, execution, and raw outcome so each one can be honestly reported.


The physics core: Vehicle Specific Power (VSP)

VSP is the instantaneous tractive power per unit mass demanded by the vehicle's motion against resistive forces. It is the U.S. EPA's standard quantity for emissions and fuel-use modeling (used by the MOVES simulator), and has an of 0.75 to 0.99 against real fuel consumption on floating car data.

$$ VSP = v \cdot \left(a + g\sin\theta + g\,C_R\right) + \frac{1}{2m}\,\rho\,C_D\,A\,v^{3} $$

Where v is ground speed (m/s), a is longitudinal acceleration (m/s²), θ is road grade, g is 9.81 m/s², C_R is rolling resistance, ρ is air density, C_D is the drag coefficient, A is frontal area, and m is vehicle mass. Output units: W/kg.

Because absolute vehicle parameters are not knowable without OBD-II, the algorithm uses a standardized reference vehicle profile. This preserves relative driver efficiency even when the exact mass and drag coefficients are unknown.

VSP is binned into discrete operating modes from negative (deceleration) through "idle" (VSP near zero) up to "heavy" and "very heavy" positive bins. The time distribution across bins is a compact signature of the whole drive.

Complementary fuel predictors

VSP is the instantaneous workhorse; three macroscopic metrics complement it at the trip level:

Sensor fusion

Raw GPS gives horizontal position at 1 Hz; the IMU gives 3-axis accelerometer and gyroscope data at 50 Hz. These are fused via a Madgwick filter that continuously estimates the phone's orientation relative to Earth, so we can:

Before any jerk or variance calculation, the 50 Hz accel signal is passed through a low-pass Butterworth filter to kill engine vibration and chassis resonance that has nothing to do with driver input.

Context estimation

Two boolean flags run alongside the scorer and damp its output toward neutral when circumstance is in control:

These do not erase the event, but they are surfaced in the UI so the interpretation is fair.


Style: intent, not efficiency

Style measures how spirited the driver's choices were. Circumstance is damped. The classifier aggregates positive (spirited) and negative (eco) signals, then maps the net difference through a hyperbolic tangent to bound the output smoothly in [-1, +1]:

$$ S_{\text{raw}} = \tanh\!\left(I_{\text{spirited}} - I_{\text{eco}}\right) $$

Spirited signals

Eco-affirmative signals

Each signal is normalized to a calibrated range. Weights are tuned on labeled real-world drives. Context flags damp signals toward 0 when MERGE_EVENT or COMPULSORY_STOP applies.

Output: a single stylePosition in [-1, +1]. UI buckets it into five labels for readability, but the underlying value is continuous.

Precision: kinematic smoothness

Precision is independent of Style. An enthusiastic driver pulling high lateral G smoothly can score high Precision; so can an eco driver coming to a gentle stop. A sloppy driver of either style cannot.

Jerk as the primary signal

Jerk is the time derivative of acceleration:

$$ j = \frac{da}{dt} $$

The human vestibular system is acutely sensitive to jerk, which is why it is the definitive proxy for ride comfort in the ISO 2631 whole-body vibration standard. ISO 2631 defines frequency-weighting curves (W_d for horizontal axes, W_k for vertical) to isolate the frequencies that most affect comfort. Tripid adapts these curves to the vehicle-frame accel output of the sensor fusion stage.

To collapse the continuous jerk stream into a trip-level metric, we take the RMS of the weighted jerk vector — RMS heavily penalizes large variance spikes, which matter more to comfort than small steady noise:

$$ J_{\text{RMS}} = \sqrt{\frac{1}{N}\sum_{i=1}^{N}\left(j_{\text{lat},i}^{2} + j_{\text{long},i}^{2}\right)} $$

Variance signals

The friction circle and motorsport telemetry

To score spirited drivers fairly, we borrow an analytical technique from motorsport telemetry. A precise high-G driver's total acceleration magnitude G_total = √(G_lat² + G_long²) forms a smooth plateau as they transition from pure braking to pure cornering (trail-braking). An amateur shows a "blip drop" — G_total plummets mid-transition because they fail to maintain pedal pressure. Detecting this specific signature is what lets a high-G corner score high Precision if executed cleanly, but drop sharply if executed with variance.

Combination function

$$ P_{\text{score}} = \exp\!\Big(-\big(k_{1}\,J_{\text{RMS}} + k_{2}\,\sigma_{a} + k_{3}\,\text{ZCR} + k_{4}\,\mathrm{var}(G_{\text{total}})\big)\Big) $$

An inverse exponential decay: flawless inputs asymptote to 1, accumulated errors drag the score downward. Coefficients are calibrated, not published.

Badge logic: a drive earns Clean Spirited when Style is clearly positive AND Precision is high; Efficient Master when Style is clearly negative AND Precision is high. Exact thresholds are tuned on real drives.

Outcome: raw cost

Outcome is not a score. It is what the drive actually cost.

Actual energy

$$ E_{\text{actual}} = \int \max\!\left(0,\; VSP \cdot m\right)\,dt $$

Negative VSP (coasting, regen) does not add to E_actual; we only charge energy when the powertrain is delivering positive tractive work.

Ideal energy

The theoretical minimum energy to move the car this distance over these grades, assuming zero acceleration and the prevailing speed:

$$ E_{\text{ideal}} = \int \left(P_{\text{rolling}} + P_{\text{aero}} + P_{\text{grade}}\right)\,dt $$

The architectural idea is from the published Moving Average Window Power Ratio Index, which uses a 60-second window to normalize against unavoidable environmental factors like grade and flow velocity.

Efficiency ratio

$$ r = \frac{E_{\text{actual}}}{E_{\text{ideal}}} $$

Typical real-world range is 1.5x to 2.5x. Lower is better. 1.0x is the physical minimum, unreachable in practice because real driving has stops and accelerations.


Fuel economy

Energy becomes liters via the lower heating value of the fuel and the powertrain efficiency implied by the manufacturer's combined km/L rating (or your calibrated value):

$$ \text{liters}_{\text{used}} = \frac{E_{\text{actual}}}{\mathrm{LHV}\cdot \eta_{\text{powertrain}}} $$

Peso cost = liters_used × price_at_time_of_drive. Price comes from the Philippines DOE weekly release (scraped and bundled into the app) or your manual override. The per-car rating is UK VCA combined (primary) with US EPA combined as secondary fallback.

Powertrain divergence: ICE vs HEV vs EV

The scoring logic cannot be universally applied across powertrains:

The algorithm selects the logic tree based on the declared powertrain. Empirically, driving-behavior variance can produce up to a 50% variance in energy consumption for a hybrid over an identical route, which is why this separation matters.

Behavior zones

The Smooth / Moderate / Harsh bar on the trip summary is computed from the magnitude of combined longitudinal and lateral acceleration, sampled at 2 Hz. Zone boundaries are calibrated on labeled data. Distinct from Precision: Precision is one number for the whole trip; zones are a time breakdown.

Driving events

A "driving event" is a moment that crossed a calibrated high-VSP threshold. Events are throttled to one per ~500m of travel so a single drawn-out hard-brake does not count as ten overlapping events.

Each event carries a rough peso estimate of the extra fuel burn, based on the excess energy above an efficient-driving baseline for the same delta-v.

City vs highway

Speed-based classification with hysteresis. A speed change has to persist for about 5 samples (~2.5 seconds) before flipping the classification, to avoid flickering at the boundary. Optimal driving style also diverges sharply across the boundary: urban is inertial management (accelerate smoothly, coast to stops), highway is aerodynamic (steady cruise at or slightly below the aerodynamic inflection point of the vehicle).


Data sources

What we do not do


References and attribution

The architecture draws on a body of published academic and regulatory work. The pillar design, context damping, and calibration approach are Tripid's; the underlying physics and signal-processing techniques are cited below.

Foundational frameworks

  1. Jiménez-Palacios, J.L. (1999). Understanding and Quantifying Motor Vehicle Emissions with Vehicle Specific Power and TILDAS Remote Sensing. MIT PhD thesis. The original VSP formulation used by the U.S. EPA.
  2. U.S. Environmental Protection Agency. Motor Vehicle Emission Simulator (MOVES). Uses VSP operating mode bins for regulatory fuel-economy and emissions modeling.
  3. International Organization for Standardization. ISO 2631: Evaluation of human exposure to whole-body vibration. Basis for the jerk frequency-weighting curves used in the Precision score.
  4. Madgwick, S.O.H. (2010). An efficient orientation filter for inertial and inertial/magnetic sensor arrays. The orientation-estimation algorithm used in Tripid's sensor fusion stage.

Driver-behavior datasets

  1. Second Strategic Highway Research Program (SHRP 2) Naturalistic Driving Study. 34M+ miles of recorded kinematics; normative baselines for the G-G friction circle and speed-regime acceleration thresholds.
  2. O'Keefe, M.P., et al. Analysis of a Pulse-and-Glide fuel-saving driving strategy. Foundational for the FFT-based PnG detector in the Style classifier.

Fuel-economy predictor literature

  1. Ericsson, E. (2001). Independent driving pattern factors and their influence on fuel-use and exhaust emission factors. Transportation Research Part D. Establishes PKE and RPA as smartphone-accessible fuel predictors.
  2. O'Keefe, M., et al. Vehicle efficiency and tractive work. NREL. Source for the Moving Average Window Power Ratio Index.
  3. Kinetic Intensity characterization papers (multiple) — ratio of characteristic acceleration to aerodynamic speed; basis for trip-level drive-cycle harshness scoring.

Research synthesis

The spectrum architecture and predictor ranking were validated against two Gemini Deep Research reports commissioned for Tripid in April 2026: Advanced Predictive Analytics and Algorithm Architecture for Real-Time Eco-Driving Evaluation Using Smartphone Inertial and Geolocation Sensors, and Advanced Mathematical Models for Spectrum Scoring in Smartphone-Based Driving Telematics. Both reports confirmed VSP as the primary predictor, surfaced PKE and KI as complementary metrics, and provided the SHRP 2-based speed-regime threshold matrix.

Other tooling