Livestock Tracking for Indian Dairy Farms: GPS Collars vs LoRa vs BLE vs Ear Tags, and What Each Tells a Farmer

The verdict first. For most Indian dairy farms, the right first purchase is not a GPS collar. It is an accelerometer tag on the neck or ear that records activity in the animal's own pattern, stores it, and syncs to a gateway at the milking point or the village collection centre, tied to the Pashu Aadhaar ear tag the animal already carries. That setup answers the question that earns money (is the cow in heat, and when should the technician come) without a mobile data plan at the farm, without a satellite fix every hour, and without a battery that dies in four months. GPS earns its place for grazing herds that cross boundaries and for a short list of high-value or theft-prone animals, and LoRa earns its place when a gateway can see the whole herd.
That sounds like a lukewarm answer to a technology question, and it is deliberate. The mistake most livestock-tracking proposals make is to start from the technology (we have a collar with GPS) and look for a problem. This post starts from the farmer. A dairy farmer has five questions, in this order of money: Is she in heat? Is she ill? Is she where she should be? Has she been taken? Is she the animal I think she is? Each of those has a different data source, a different update rate and a different cost per animal, and a collar that is cheap enough for one is often wrong for another.
The rest of the post maps the five questions to four technologies, puts numbers on battery life with a model you can run, goes through what the accelerometer evidence says about heat detection (including where it does not apply to Indian herds), and ends with a decision table by herd size and farm type.
Start from the question the farmer is asking, not from the radio. Heat detection, health, boundary, theft and identity need different data at different rates, and no single tag is the best answer to all five.
The Five Questions, and the Data Each One Needs
Farmer's question | What it is worth | Data that answers it | Update rate needed | Technology that fits |
Is she in heat? | Missed heat means a lost cycle (about three weeks) of milk and breeding time | Activity (movement), rumination and feeding changes against her own baseline | Every few minutes, summarised hourly; alert within hours | Neck or ear accelerometer; BLE or LoRa to a gateway |
Is she ill? | Early detection saves treatment cost and milk loss | Drop in activity or rumination, temperature trend where available | Hourly summaries | Same accelerometer; optional temperature |
Is she where she should be? | Strays, crop damage, road accidents | Position, boundary crossing | Minutes while grazing, none in the shed | GPS with LoRa or cellular uplink |
Has she been taken? | A high-value animal is a large loss | Position, movement at night, tamper alerts | Minutes, with a response plan | GPS with cellular; a person has to respond |
Which animal is this? | Records, breeding, vaccination, milk recording, traceability | A unique ID at the milking point and the vet's visit | At each interaction | The Pashu Aadhaar ear tag, barcode or electronic ID |
The table already explains why a farm that buys a GPS collar to answer the first row has bought the wrong sensor. Position tells you where an animal stands. It says very little about whether she is in heat, because heat shows up as a change in movement and feeding that an accelerometer measures directly and cheaply.
A gateway shared by a hundred animals costs a fraction of one dedicated to three. At smallholder scale, who owns the infrastructure matters more than which radio it uses.
What India's Dairy Structure Does to the Maths
India's dairy sector is the world's largest by output, and its farms are small. A national presentation on the digital livestock stack describes the sector as involving nearly ten crore farmers, mostly small and marginal, with an average holding of two to three cattle, spread across 53 cattle and 20 buffalo breeds, and with milk collected mainly through cooperatives. The 20th Livestock Census of 2019 counted about 302.8 million bovines. Those facts change the unit economics of every option:
A per-farm cost is brutal when a farm has three animals. A gateway, a SIM and a monthly plan spread across three animals dwarf the cost of the tags. Infrastructure has to be shared, at the cooperative or collection-centre level, or has to cost nothing at the farm.
Per-animal cost has to be small against milk income. A tag that costs a meaningful fraction of what an animal earns in a season will not find buyers outside well-capitalised farms.
Identification already exists. Under the National Digital Livestock Mission, every registered animal receives a 12-digit barcoded ear tag, the Pashu Aadhaar, linked to breeding, vaccination, ownership and health records in the Bharat Pashudhan system. Official figures reported late in 2025 put the number issued at about 35.96 crore, with 9.5 crore livestock owners registered, and a later report cites more than 39 crore registrations by July 2026. Any tracking product that invents its own identity scheme is competing with a government system that is already on the animal.
Genetic and behavioural diversity is wide. Breed, housing and management differ from Holstein dairies in a temperate country, which matters for algorithms validated elsewhere (more on that below).
The practical conclusion is that the winning design for the typical Indian dairy farm shares the expensive parts. A village collection centre or a milking point already has power, a person and a daily rhythm: animals arrive twice a day. A tag that buffers its data and syncs when the animal passes that point needs no radio network at the farm at all.
Four Technologies, Compared on What They Cost the Farmer
Option | What it tells you | Range and coverage | Battery (typical, depends on settings) | Infrastructure | Weak point | Fit for Indian smallholders |
GPS collar with cellular uplink | Position anywhere there is signal | National, where the network works | Weeks to months at hourly fixes | A SIM and plan per collar; 2G fallback is fading in cities | Data cost, battery, signal in sheds and villages | Poor for routine use; good for a few high-value animals |
GPS collar with LoRa uplink | Position, over your own network | A few kilometres to a gateway in open country; shorter in villages | Months to years with sparse fixes | One or more gateways, power and backhaul | Gateway cost; GPS fix energy | Good for grazing herds in a defined area |
Accelerometer tag with BLE sync | Activity, rumination, heat signal | Short range; syncs near a gateway or phone | Many months to years | A gateway at the milking point or a phone app | No position; data arrives in batches | Best fit for stall-fed and smallholder herds |
Accelerometer tag with LoRa uplink | Same, near real time | Barn or village scale | Years at low uplink rates | Gateways | Fewer than ideal bytes per message | Good for larger barns |
Passive ear-tag ID (barcode or RFID) | Identity at the point of reading | Centimetres to a metre at a reader | No battery | Readers at milking and vet points | Tells you nothing until read | Already deployed; use it |
Passive animal identification deserves a sentence of context. Electronic ear tags following ISO standards 11784 and 11785 are used in many countries for animal ID, and passive tags need no battery because the reader powers them. India's national programme is built around a barcoded tag, which any phone camera can read and which costs very little. A project that adds an electronic ID layer would do so for reasons of speed at the milking point or automation, with the ID of record still the Pashu Aadhaar number.
What a Collar Costs in Battery, by Design Choice
Battery life is the part of livestock tracking that proposals describe in months and farms experience in weeks. The fix is to compute it. The model below counts the three energy sinks that matter (GPS fixes, uplinks, and the always-on accelerometer plus sleep current), with placeholder figures you replace by measuring your own hardware.
# collar_energy.py -- days of battery life from a duty-cycle model
def energy_mah_per_day(gps_fixes, e_fix_mah, uplinks, e_up_mah, imu_ua, sleep_ua):
return gps_fixes*e_fix_mah + uplinks*e_up_mah + (imu_ua + sleep_ua)/1000.0*24
def life_days(cap_mah, per_day, usable=0.8):
return cap_mah*usable/per_day
cases = [
("GPS 4 fixes/day + LoRa 24 uplinks", 4, 0.30, 24, 0.0050),
("GPS 24 fixes/day + cellular 24 uplinks", 24, 0.30, 24, 0.40),
("No GPS, accelerometer + LoRa 24 uplinks", 0, 0.00, 24, 0.0050),
]
for name, fixes, efix, ups, eup in cases:
d = energy_mah_per_day(fixes, efix, ups, eup, imu_ua=15, sleep_ua=5)
print(f"{name:42s} {d:6.2f} mAh/day -> {life_days(2600, d):7.0f} days on 2600 mAh")
With placeholder figures of 0.30 mAh per GPS fix including acquisition, 5 microamp-hours per LoRa uplink, 0.4 mAh per cellular session, 15 microamps for the accelerometer and 5 for sleep, the model returns:
Design | Energy per day | Life on a 2,600 mAh cell (80 percent usable) |
GPS 4 fixes a day plus LoRa, 24 uplinks | 1.80 mAh | about 1,150 days |
GPS 24 fixes a day plus cellular, 24 sessions | 17.3 mAh | about 120 days |
No GPS, accelerometer plus LoRa, 24 uplinks | 0.60 mAh | beyond the cell's practical life |
The figures are placeholders, so do not quote them. The ratios are the lesson. Moving from four GPS fixes a day over LoRa to hourly fixes over cellular costs about a factor of ten in life, from over three years to about four months, and the fix energy dominates. A collar that answers the heat question needs no fixes at all, and its battery is limited by shelf life and enclosure, not by the radio.
The battery follows the GPS. If the farmer's question can be answered without a satellite fix, leave GPS out and the same cell lasts years instead of months.
Heat Detection: What the Evidence Says and Where It Stops
Heat detection is where the accelerometer tag makes its money, and the literature is encouraging, with caveats that matter for India.
Estrus changes behaviour: activity rises, and rumination and feeding time fall. Activity monitors, either collar-mounted or leg- or ear-mounted, measure those changes. Published validations report strong numbers. A neck-mounted collar tested on high-producing Holstein cows reported a sensitivity of about 90.9 percent, a specificity of 100 percent and an accuracy of about 93.6 percent for estrus detection. An ear-tag accelerometer evaluated on 579 estrus events in indoor-housed multiparous cows reported sensitivity and specificity of 97 and 98 percent. A review notes that a collar-based system's sensitivity ranged from 76 to 82 percent with specificity of 99 to 100 percent in both pasture and indoor housing, and that combining temperature and accelerometer data pushed accuracy above 90 percent across breeds and systems. Separate work on behaviour classification with neck collars reported overall accuracy around 0.90 to 0.93 for eating and rumination.
Three cautions apply before anyone repeats those numbers in a sales conversation:
Most of this evidence comes from Holstein herds in Europe, North America and Oceania. Indian herds are crossbred and indigenous cattle and buffalo, with different body size, different housing, different heat expression and different feeding. Buffalo estrus is widely described as harder to observe than cattle estrus. The sources reviewed for this post contain no validated sensitivity and specificity for buffalo or for indigenous breeds in smallholder settings, and a product claiming them should show its data.
Validation sets are small and the labels vary. One of the studies behind the review used ten cows. Sensitivity figures depend on how "true heat" was recorded (visual observation, progesterone, ultrasound, insemination success), and the method differs between studies.
A heat alert is a prompt, not a diagnosis. Lameness, fighting, a change in feed, transport and weather all move activity. The point of the alert is to tell the farmer which animals to watch and when to call the insemination technician, and the cost of a false alarm (a wasted check) is low relative to the cost of a missed heat.
The sensible plan is to validate the algorithm on the farm's own animals against insemination records. India's breeding programme records artificial insemination events against the animal's tag ID in the Bharat Pashudhan system, which gives a ready source of ground truth for a pilot: every recorded insemination is a heat the system should have flagged.
Heat-detection accuracy figures come mostly from Holstein herds. Treat them as a ceiling for Indian crossbred cattle and buffalo until you have validated against your own insemination records.
Turning Raw Acceleration Into a Heat Signal
A heat detector does not need a deep model to start. A transparent version computes an activity index per animal, builds a rolling baseline of that animal's own normal, and flags days or hours that exceed it by a margin. The accelerometer samples a few times a second, the tag summarises it into a one-byte value per 15 minutes, and the gateway or cloud does the comparison.
# heat_signal.py -- per-animal activity index and a baseline-relative heat flag
import numpy as np
def activity_index(acc_xyz_g: np.ndarray, fs: float, win_s: int = 900):
"""acc_xyz_g: (N,3) acceleration in g. Returns one value per window: mean dynamic
acceleration (an ODBA-like measure), which rises when the animal moves more."""
n = int(fs * win_s); out = []
for i in range(0, len(acc_xyz_g) - n + 1, n):
w = acc_xyz_g[i:i+n]
static = w.mean(axis=0) # gravity and posture
dyn = np.abs(w - static).sum(axis=1) # movement on top of posture
out.append(dyn.mean())
return np.array(out)
def heat_flags(daily_ai, baseline_days: int = 7, k: float = 2.5):
"""Flag a day whose summed activity exceeds k x the median of the previous days."""
flags = []
for i, v in enumerate(daily_ai):
if i < baseline_days:
flags.append(False); continue
base = float(np.median(daily_ai[i-baseline_days:i]))
flags.append(bool(v > k * base))
return flags
On synthetic data, eight ordinary days with a daily activity score of 2.9 followed by one day at 7.5 (about 2.6 times baseline) produces a flag on the ninth day only. Real animals are messier. The tuning parameters worth exposing are the multiplier, the baseline length, whether to compare against the herd or the animal herself (herself is better, because animals differ), and the time window (an evening burst of activity at feeding time is normal). Rumination and feeding signals, where the sensor can estimate them, make a second channel that falls when activity rises, and the pair is more specific than either alone.
Whatever the algorithm, store the raw summaries and the farmer's outcome. A heat flag, followed by an insemination and a confirmed pregnancy, is a labelled example. After a season the farm has a dataset specific to its own animals, which is the only dataset that matters for its own accuracy.
The Collar Itself: Mechanics Matter More Than Radios
Collar failures in the field are mostly mechanical, and the Indian context adds several.
Water. Buffaloes wallow, and cattle stand in ponds and puddles. A collar needs an ingress rating that tolerates immersion (IP67 at minimum, with IP68 sensible for wallowing animals), and water and mud attenuate radio signals badly, so antenna placement and the transmit schedule should not depend on the animal being dry and in the open.
The body. An animal's body absorbs and detunes antennas. A BLE or LoRa antenna lying against the neck loses range compared with the same antenna on a bench. Test range on a live animal, not on a table, and place the antenna on the upper side of the collar.
Weight and fit. Keep the collar a small fraction of the animal's body weight, balance the electronics against a counterweight so the unit sits on the top of the neck, and size the collar to the neck of a milking buffalo, a crossbred cow or a heifer. Confirm weight and fit guidance with the farm's veterinarian. A collar that rotates to the bottom of the neck reads garbage.
Breakaway. A collar that cannot release under load is a hazard when an animal gets caught on a fence or a branch.
Heat and sun. Enclosures sit in direct sun in an Indian summer, and a black plastic housing on a black neck gets hot. Choose colour and materials with temperature in mind and derate the battery for heat.
Chewing, rubbing and licking. Animals investigate what is attached to them, and calves chew. A rugged, smooth housing with no loose parts survives better.
Ear tags versus collars. Ear-mounted accelerometers avoid the collar rotation problem and hold the sensor in a consistent position, at the price of a smaller battery and a harder antenna problem. They also attach to a body part the Pashu Aadhaar tag already occupies, so the two tags must coexist.
Connectivity: Matching the Link to the Farm
Each option implies a link, and each has a different Indian risk.
Cellular. A GPS collar that reports over cellular needs a SIM, a plan and coverage. Reports on Indian IoT connectivity note that 2G remains in use on some networks while Jio operates only 4G, so a 2G-class tracker works with some operators and not others, and the long-term direction is toward LTE-based services. A product designed around 2G today carries a sunset risk that the farmer will not understand until it happens.
LoRa. India's 865 to 867 MHz band is licence-exempt for low-power devices, which allows a farm or a cooperative to run its own network without an operator. A gateway at a milking shed or a collection centre with a decent antenna can cover a village. The constraint is the payload: the slowest data rates carry on the order of 51 bytes per message in this band, which is enough for an activity summary and a status byte and nowhere near enough for raw data.
BLE sync. A tag that buffers a day of 15-minute summaries (96 bytes) and sends them over BLE when it comes within range of a phone or gateway at the milking point needs no network at all. The farm's infrastructure is a phone or a small gateway and a place to charge it, and the sync happens during the 10 minutes of milking when the animal is stationary.
SMS. For very low-infrastructure sites, an SMS-based tracker works where data does not, at the cost of per-message charges and the same 2G risk.
A compact uplink for the LoRa and BLE cases looks like this:
// 8-byte periodic message from an accelerometer tag (summaries, not raw samples)
typedef struct __attribute__((packed)) {
uint16_t tag_short_id; // maps to the 12-digit Pashu Aadhaar ID at the gateway
uint16_t minute_of_day_x; // window start, minutes since midnight (+ day counter bits)
uint8_t activity_idx; // 0..255, scaled dynamic acceleration for the window
uint8_t rumination_pct; // fraction of window in rumination-like motion, 0..100
uint16_t flags_batt; // bit0 fall/stuck, bit1 low battery, bits 2..15 battery mV step
} tag_msg_t; // 8 bytes
Keep the 12-digit national ID out of the radio packet. A two-byte short ID mapped at the gateway to the Pashu Aadhaar number keeps the message small and avoids broadcasting the identifier over the air.
The Decision Table by Farm Type
Farm type | Typical herd | What to buy | What to leave out | Why |
Smallholder household | 1 to 5 animals | Nothing at the farm; a shared service at the collection centre (BLE tags synced at milking) if a cooperative offers it | Per-farm gateways, SIMs, GPS | Infrastructure cost per animal is too high at this scale |
Cooperative village | 100 to 500 animals across 50 to 200 farms | A gateway or phone at the collection centre; accelerometer tags with BLE sync on animals in the breeding programme | GPS on every animal | The cooperative can carry the shared cost and has a daily gathering point |
Commercial stall-fed barn | 20 to 200 animals | Neck or ear accelerometer tags with LoRa or BLE to barn gateways; milking-parlour readers | GPS and cellular on every animal | Heat and health are the money questions; no boundary risk |
Grazing or semi-open herd | 20 to 100 animals | Accelerometer tags on all; GPS plus LoRa on a subset (lead animals, high value) | Cellular GPS on all animals | Boundary and loss risk is real, but GPS on every animal burns battery |
High-value or theft-prone animal | A few animals | GPS with cellular and a response plan, with accelerometer for health | Assuming the tracker prevents theft | A tracker records a theft; people stop it |
A Village Cooperative's Pilot
A representative composite, genericised and with no named cooperative, illustrates the pattern. A village dairy cooperative with about 180 member farms, each holding two to four animals, ran a pilot on 40 animals across 12 farms. The animals were all in the breeding programme and all carried a Pashu Aadhaar tag. The pilot fitted each with a neck-mounted accelerometer tag that buffered 15-minute activity summaries and synced over BLE to a phone mounted at the collection centre's milking point, twice a day.
The infrastructure was one phone, a charger and a printed daily sheet. There was no SIM at any farm and no gateway at any farm. The cooperative's field worker, already visiting for milk records, checked the dashboard each morning and phoned the farms with animals flagged for heat.
The first month was mostly learning. Two collars rotated on the neck and read nonsense until the counterweight was redesigned. Three buffaloes wallowed daily, and the first housing batch let moisture in until a better seal was fitted. The heat flag fired on a large number of animals during a week of unusual heat, which the team traced to weather-driven activity changes and handled with a herd-wide correction. Over the next two months the pilot compared flags with insemination records entered through the national breeding application. The cooperative's own figures from this pilot are not generalised here. The shape of the result is the useful part: heat flags matched recorded insemination events for cattle far better than for buffaloes, which matched the literature's warning, and the field worker's willingness to act on the alerts, not the algorithm's raw accuracy, determined the value delivered. The farmers who saw one successful insemination from a flagged heat asked for more tags. The ones who saw false alarms asked what the collar was for.
What a Tag Costs per Animal per Year, and Why Sharing Wins
Proposals quote the price of a tag and leave out everything else. The cost the farmer or cooperative actually carries per animal per year has three parts: the tag spread over its life, the gateway and its backhaul spread over its life and over the animals it serves, and the recurring support (cleaning, replacements, a field worker's time). The sharing term is the one that swings the answer.
# cost_per_animal.py -- cost per animal-year, in multiples of one tag's price
def cost_per_animal_year(tag_cost, tag_life_y, gw_cost, gw_life_y, animals_on_gw, support_per_animal_y):
return tag_cost / tag_life_y + gw_cost / (gw_life_y * animals_on_gw) + support_per_animal_y
# Illustrative inputs: gateway costs 25 tag prices, lasts 5 years; tags last 4 years;
# support is 0.2 tag prices per animal per year.
for animals in (3, 30, 100):
c = cost_per_animal_year(1.0, 4, 25.0, 5, animals, 0.2)
print(f"{animals:3d} animals on the gateway -> {c:.2f} tag-prices per animal-year")
With those placeholder inputs, a gateway serving 100 animals brings the annual cost to about 0.50 tag prices per animal, a gateway serving 30 brings it to about 0.62, and a gateway dedicated to a three-animal farm brings it to about 2.12, more than four times higher. Substitute your own numbers. The structure is what matters: below a few dozen animals per gateway, infrastructure dominates, which is why cooperative-level or milking-point sharing beats per-farm deployment for smallholders.
The second half of the calculation is the benefit. A missed heat costs roughly one breeding cycle of delay, and the farm can price that from its own numbers: extra days open multiplied by the daily cost of keeping a non-pregnant animal, plus the milk forgone. Divide the annual cost per animal by the value of one saved heat and you get the number of additional heats per animal per year the system must catch to pay for itself. If that number is well below what a farm currently misses, the economics work. If it is close to the number of heats an animal has in a year, no tag will save it. Do the division before the pilot, and let the pilot test whether the system reaches the number.
What to Measure on the Farm Before Buying Anything
A pilot proves little without a baseline, and most farms do not have one. Before the first tag goes on, the cooperative or farm should record what it can for a few months. These numbers make a pilot interpretable:
Heat detection by observation today: the share of heats the farmer or technician notices, estimated from records of insemination timing relative to the previous heat.
Conception rate per insemination, and the number of inseminations per pregnancy.
Calving interval and days open by animal.
How heats are currently noticed (a farmer's observation at milking, a neighbour's report, mounting behaviour) and at what time of day.
Existing records in the national system: how many animals have a tag, how many have insemination and vaccination entries, and how reliable the entries are.
Who does what: the technician's travel time, the field worker's route, and how quickly a call turns into a visit.
The point is to compare like with like. A system that doubles the detection rate on a farm that already catches 80 percent of heats has done much less than the same system on a farm that catches 40 percent, and a farmer who sees the baseline numbers is far more likely to believe the result.
The pilot that worked used one phone at the milking point and no network at any farm. Sharing the cheap part of the infrastructure, and spending the money on tags for the animals that mattered, kept the cost per animal low and the field worker's route short.
When Not to Put a Tag on an Animal
A farm with no one to act on the alerts. If no technician will come, a heat alert is a notification about a decision nobody will make.
A household with one or two animals, no phone with BLE and no cooperative service. The tag's cost per animal is too high and the benefit too small.
An application that needs an exact location indoors. GPS does not work in a shed, and a barn positioning system is a different (and more expensive) product.
An algorithm sold without validation on animals like yours. Ask for sensitivity and specificity on crossbred and buffalo animals in smallholder conditions, and a plan for a pilot against insemination records.
A tracker offered as theft prevention. A tracker is evidence. The prevention is a person and a plan.
A design that depends on 2G. If the product only works on a network that is being retired, say so before the farmer finds out.
Starting on Monday
Write the five questions and rank them for your farms. Which ones cost the most when missed? Start with that one.
Use the national ID. Map every tag to the 12-digit Pashu Aadhaar number at the gateway, and keep the number out of the radio message.
Choose the link by farm type, using the decision table. Default to BLE sync at the milking point for smallholders.
Compute battery life with the energy model and your measured currents. Leave GPS out unless a question needs it.
Test the collar on animals. Range, rotation, immersion, heat, chewing, with the vet's input. A bench is not a buffalo.
Validate the heat algorithm on your own animals against insemination records for at least one full cycle.
Write down who acts on each alert and what they do. If nobody does, remove the alert.
Review after a season: which flags led to inseminations, which were noise, which tags were lost or failed, and what a farmer would pay.
What the Cow Is Trying to Tell You
A cow in heat is telling the farm something with her feet and her mouth, and a good tag listens. The best livestock-tracking systems are not the ones with the most radios. They are the ones that notice the right change, tell the right person at the right time, and keep working through the monsoon, the wallow and the summer. Start with the question, share the infrastructure, and put the battery into the sensor that answers it.
EurthTech is an engineering-first product design and embedded systems company with a development center in Hyderabad. To discuss a project, write to connect@eurthtech.com or see https://www.eurthtech.com/case-studies.




Comments